Дипломна работа

Софтуерна рамка за автоматизирани тестове на Уеб приложения | Защитена на: 01/01/1900

Дата на защита: 26.03.2019 г.

 

Анотация:

Живеем във време, в което софтуерните технологии и решения се развиват с шеметна скорост – буквално ежедневно излизат нови по-добри и по-усъвършенствани версии на софтуерни езици, библиотеки, конкурентни програми и решения. Разработчиците на софтуер са принудени да се съобразяват с времето и интензивността при създаването на своето приложение, като това от своя страна е предпоставка за появата на повече дефекти в софтуера. Достигането на даден дефект до клиента на софтуерното приложение може да окаже пагубно влияние, не само върху текущото използване, но и върху цялостното впечатление и доверие към създателя на продукта. Това коства пари, клиенти и имидж, а също така и доста допълнително време за поправка и внедряване.

С цел максималното намаляване на дефектите, достигащи до клиентите, разработчиците инвестират допълнително време в тестване и оптимизация на системата, като част от процеса на разработка на софтуера си. Доказан и логичен e и факта, че ранното откриване на дефект в софтуера, спестява многократно пари и време, като също така е критично за имиджа и репутацията на компанията-разработчик.

Тестването вече е неразделна част от цикъла на разработка, като в зависимост от типа приложение, то може да отнеме и доста време за изпълнение. Дори и сравнително малък брой тестови сценарии, изпълнени ръчно първо могат да бъдат доста продължителни и досадни, а второ – изпълнението от човек може да доведе до пропуски и грешки. Ето защо е изключително ценна разработката на автоматизирани тестове, които да се изпълняват лесно и редовно, върху дори и малка промяна в кода, за всяка версия на софтуера. Така може бързо да се провери дали промяната е предизвикала дефекти или не. Изготвянето на система-рамка, в която да могат лесно да се добавят нови автоматизирани тестове или да се смени предметната област на тестване, е доста полезна на хората отговарящи за тестването и разработката на софтуер. Чрез нея могат лесно да се конфигурират тестовите данни, броят на изпълняващите се тестове, версията на софтуера и репорта от изпълнението им.

Разработването на системата - цел на разработката на настоящата дипломна работа трябва да даде възможност на потребителите да осъществят различни тестови сценарии върху тяхното приложение. По този начин, след промяна в кода на приложението, разработчика може по бърз, лесен и автоматизиран начин да разбере дали промяната му е счупила съществуващата функционалност или дали производителността на продукта се е променила. Дава се ясна оценка за качеството на софтуера, неговата надеждност и производителност.

Обекта на тестване, който ще бъде цел на софтуерната рамка е уеб-сайт за качване на реферати от студентите във ФМИ на СУ, по задължителната дисциплина „Web технологии“ за специалности Компютърни науки (4 курс, зимен семестър) и Софтуерно инженерство (3 курс, летен семестър). Въпреки това системата-рамка може да бъде преизползваема и лесно внедрена във всяко друго уеб-приложение.

Основната задача е да се осъществи работна рамка (фреймуорк), чрез който се разработват автоматизираните тестове. За реализирането й се използват, някой от най популярните технологии в областта като Selenium (Селениум), C# (Си шарп) и Visual Studio. Съдържа слоеве, в които се разписват отделните компоненти на тестовите сценарии – функционални стъпки, извиквания, входни данни. Така разработката на нов сценарии може да се случи лесно и безболезнено. След разработката, тестовете се изпълняват и като резултат се получават репорти, показващи ни резултата от изпълнението на избраните от нас тестове.          

Ползата на системата е автоматизираното тестване на широк спектър от сценарии върху съществуващия уеб-сайт за качване на реферати. По този начин функционалността на сайта може да бъде променена доста по-безопасно, тъй като тестовете ще ни дадат оценка за качеството и дефектите в новата версия. Те могат да се изпълнят произволно на всеки етап от разработката, както и на финалния етап, когато новата версия е готова. Чрез репортите можем да видим и времето на изпълнение на дадено действие, като така може да се направи оптимизация която да поправи производителността.

            Другата основна полза се крие в системата-рамка, която дава възможност за бързото разработване на нови тестови сценарии. При изработката на нови функционалности или при намирането на нови сценарии, които не са били автоматизирани досега, те могат лесно да се добавят в съществуващата система за тестване и да се включат в изпълнението.

Scroll to Top