AWS如何做到適應(yīng)應(yīng)用測試流程?
在AWS中構(gòu)建和測試應(yīng)用有幾個好處。企業(yè)可以快速、低成本地使用資源;適當(dāng)?shù)膽?yīng)用程序測試流程不僅可以檢測漏洞,還能確保新應(yīng)用程序可靠,且已經(jīng)準(zhǔn)備好用于產(chǎn)生。但是,因?yàn)闆]有單一方法可以進(jìn)行質(zhì)保測試,所以在應(yīng)用程序測試流程中使用AWS時還存在幾點(diǎn)需要考慮。
軟件測試中,基礎(chǔ)設(shè)施是一個主要的挑戰(zhàn)?,F(xiàn)代化應(yīng)用程序更強(qiáng)大,更具擴(kuò)展性,但少數(shù)企業(yè)將會投資于所需上,來運(yùn)行所需的服務(wù)器、網(wǎng)絡(luò)帶寬和存儲資源,從而在負(fù)載之下全面測試應(yīng)用程序。內(nèi)部測試讓人望而卻步,導(dǎo)致IT團(tuán)隊縮短或省略一些高端負(fù)載測試。
這就是遷移應(yīng)用測試到如AWS這樣的公有云變得越來越流行的原因了。開發(fā)人員可以租用上千個Amazon EC2實(shí)例,創(chuàng)建巨大的 Amazon Elastic Block Store (EBS)和S3存儲環(huán)境。一個測試環(huán)境可能只運(yùn)行幾個小時或幾天;當(dāng)測試周期完成后,執(zhí)行測試、收集結(jié)果,然后暫停或關(guān)閉它。
無法再造問題可能會限制應(yīng)用程序測試流程。如果開發(fā)人員不能再造問題,他就不能修復(fù)這一問題。AWS Management Console的BundleInstance功能,允許測試人員按需創(chuàng)建Amazon Machine Instances (AMI)。一旦AMI被綁定、上載和登錄,開發(fā)人員就能夠訪問AMI,查看參數(shù)、數(shù)據(jù)和其它導(dǎo)致漏洞的因素。
AWS API和命令行接口工具支持測試自動化。這些工具允許開發(fā)人員自動化創(chuàng)新和配置測試環(huán)境、連接數(shù)據(jù)庫、運(yùn)行腳本,甚至使用持續(xù)集成方法,在所有成功的部件上自動化運(yùn)行測試套件。當(dāng)應(yīng)用程序測試流程需要數(shù)據(jù)庫時,管理員可以使用已經(jīng)上傳的測試數(shù)據(jù)集合的Amazon Relational Database Service實(shí)例。開發(fā)人員通常會復(fù)制同一個數(shù)據(jù)庫來確保每一次測試周期使用了相同的數(shù)據(jù)。
也許,在AWS的軟件測試中最值得一提的是,計算與存儲之間的緊密關(guān)系。測試通常需要EBS實(shí)例,在運(yùn)行時時,存儲EC2實(shí)例產(chǎn)生的所有改變。開發(fā)人員必須使用EBS文件系統(tǒng),并配置測試設(shè)置來連接正確的EBS和EC2實(shí)例,并在測試流程中保持EC2的***狀態(tài)。沒有了這一實(shí)時存儲,一旦實(shí)例關(guān)閉,任何在測試中由EC2產(chǎn)生的運(yùn)行時改變都會丟失。