Skip to main content

Ano ang isang balangkas ng automation ng pagsubok?

Ang isang balangkas ng automation ng pagsubok ay isang hanay ng mga tool na ginamit upang magsagawa ng awtomatikong pagsubok sa software.Ang mga frameworks ng automation ng pagsubok ay nagbibigay ng makabuluhang pakinabang sa manu -manong pagsubok at karaniwang ginagamit sa mabilis na pag -unlad ng software.Pinapayagan ng mga frameworks na ito ang mga developer ng software na lumikha ng mga pagsubok, magsagawa ng mga pagsubok at pag -aralan ang mga resulta ng pagsubok.Ang isang balangkas ng automation ng pagsubok ay maaaring hinihimok ng code, data, isang graphic na interface ng gumagamit (GUI) o isang kumbinasyon ng mga ito.Sa Classic Waterfall Software Development Life Cycle, ang pagsubok sa software ay isang discrete phase na isinagawa pagkatapos ng pagpapatupad, o pag -coding.Tulad nito, pangkaraniwan ang mga pagsubok na pinatay ng tao.

Maraming mga koponan sa pag -unlad ang pumalit sa modelo ng talon na may iba't ibang mga pamamaraan ng pag -unlad ng software ng maliksi, na karaniwang nangangailangan ng mabilis, pag -unlad ng iterative.Ang mabilis na pag -unlad ay lumikha ng isang pangangailangan para sa mabilis na pagsubok.Ang isang balangkas ng automation ng pagsubok ay nagbibigay -daan sa isang koponan ng software na magsagawa ng madalas, awtomatikong pagsubok sa isang base ng code.Halimbawa, sa halip na nangangailangan ng isang hiwalay na yugto ng pagsubok pagkatapos ng pag -unlad, ang isang koponan na gumagamit ng isang balangkas ng automation ng pagsubok ay maaaring pumili upang magpatakbo ng isang buong suite ng mga pagsubok sa magdamag, pati na rin ang mas maliit na mga chunks ng mga awtomatikong pagsubok sa buong araw dahil ang mga pagbabago ay ginawa sa pinagmulanCode.

Ang pinaka-karaniwang ginagamit na uri ng balangkas ay ang balangkas na hinihimok ng code, na ginagamit upang magsagawa ng pagsubok sa puting-kahon.Ang mga frameworks na hinihimok ng code ay nangangailangan ng mga developer na magsulat ng maliit na snippet ng code, sa anyo ng mga pagsubok sa yunit, upang subukan ang pag-andar ng software o pagganap.Ang mga nag-develop na gumagamit ng mga frameworks na hinihimok ng code ay dapat mag-ingat upang isulat ang kanilang software sa isang paraan na nasusubok at mdash;Iyon ay, ang code ay dapat na modularized na ang isang yunit ng pagsubok ay maaaring tumawag ng isang snippet ng code at i -verify ang resulta.Ang mga frameworks na ito ay karaniwang nagsasama ng isang pagpapatupad ng XUNIT, kung saan ang X ay nag -iiba batay sa wikang programming na nasubok.

Ang mga frameworks ng pagsubok na hinihimok ng GUI ay ginagamit upang magsagawa ng pagsubok sa itim na kahon, gamit ang isang tool ng software bilang isang gumagamit, sa pamamagitan ng mga input ng mouse at keyboard.Maaaring binubuo sila ng mga script na isinulat ng mga developer upang mag-ehersisyo ng isang serye ng pag-andar, o maaaring sila ay binubuo ng mga script na nabuo ng tool, tulad ng mga record-and-play-back script.Ang isang potensyal na disbentaha sa mga frameworks na ito ay ang script ay masisira tuwing magbabago ang GUI.Ang ilang mga frameworks ng GUI-Automation ay maaaring makabuo ng isang script na maaaring mai-edit ng isang developer kung sakaling ang mga pagbabago sa GUI, at ang iba ay maaaring mangailangan ng gumagamit na lumikha ng isang sariwang record-and-play-back session.Pagsubok gamit ang data, at ang mga pagsubok na ito ay karaniwang gumagana sa mga talahanayan ng data na tumutukoy sa parehong mga input at output.Ang data ay maaaring itago sa iba't ibang mga lokasyon, tulad ng mga database, spreadsheet o mga file ng teksto.Ang mga script ay maaaring isulat upang maisagawa ang mga pamamaraan ng software na kumukuha ng mga input bilang mga parameter at upang mapatunayan ang halaga ng pagbabalik ng mga pamamaraan ng software laban sa output.Anumang iba pa na maaaring iba -iba, tulad ng kapaligiran kung saan isinasagawa ang pagsubok, maaari ring maiimbak sa data at hiwalay sa script ng pagsubok.Ang isang kalamangan na ibinigay ng mga frameworks na ito ay ang paghihiwalay ng data at lohika, na madalas na humahantong sa mas mababang pangmatagalang pagpapanatili.