Web სისტემების ტესტირების ავტომატიზაცია Open Source ტექნოლოგიების გამოყენებით

ავტორი


გია სურგულაძე, მიხეილ გულიტაშვილი, ანა რამიშვილი

კატეგორია

ინტერნეტი, ელექტრონული მთავრობა, ელექტრონული კომერცია
სტატიის გადმოწერა

Web სისტემების ტესტირების ავტომატიზაცია Open Source ტექნოლოგიების გამოყენებით
გია სურგულაძე
მიხეილ გულიტაშვილი
ანა რამიშვილი
საქართველოს ტექნიკური უნივერსიტეტი,თბილისი, საქართველო
g.surguladze@gtu.ge, mikheil.gulitashvili@gmail.com, anaramishvili@ymail.com

ანოტაცია – განიხილება Web სისტემების ტესტირების პროცესის ავტომატიზაციის, დამუშავების და რეალიზაციის საკითხები თანამედრვე Open Source ინფორმაცული ტექნოლოგიებით. ტესტირების ავტომატიზაცია ხორციელდება Selenium მატესტირებელი ინსტრუმენტებით, სცენარების რეალიზაცია კი Java/HTML ტექნოლოგიებით. შემოთავაზებულია პროგრამული უზრუნველყოფის ავტომატური ტესტირების ძირითადი ცნებები, ტესტების მიმდევრობითი და პარალელური შესრულების შეფასებები, ტესტირების რეპორტი. ავტომატური ტესტირების შედარება ხელით ტესტირებასთან და მათი გამოყენების სფეროები.
საკვანძო სიტყვები– პროგრამული სისტემა. ავტომატური ტესტირება, პარალელური ტესტირება, ავტომატური სცენარი, ბაგი, ტესტირების რეპორტი, Selenium, IDE, Remote control, Grid, TestNG, ტესტ–სკრიპტი, ტესტ–სუიტი, მატესტირებელი ფრეიმვორკი, ანოტაცია, ლოკატორი.
I. შესავალი
თანამედროვე საინფორმაციო ტექნოლოგიების ბაზარი ხასიათდება პროგრამული პროდუქტების დიდი მრავალფეროვნებით. კომპანიების მიერ ინტენსიურად იქმნება სხადასხვა სფეროსთვის საჭირო პროგრამული პაკეტები.
რა არის პროგრამული ინსტრუმენტი და რატომ არის ის ასეთი საჭირო ? მიზეზი ისაა, რომ კომპიუტერულ ეპოქაში ცხოვრების თითქმის ყველა სფერო კომპიუტერიზებულია. ჩვენთვის მნიშვნელოვანია საუკეთესო პროგრამული პროდუქტის მოპოვება, რაც არც ისე მარტივია. არსებობს მრავალი ხელმისაწვდომი პროგრამა, რომელთაგანაც საუკეთესო აპლიკაციებს აფასებენ ხარისხით. ტესტირება არის სწორედ აპლიკაციის ხარისხის განმსაზღვრელი პროცესი [1].
დღეისათვის არსებული პროგრამული პაკეტების დიდი ნაწილი არის Web-ზე ბაზირებული პროგრამული პროდუქტი, რომელთა გამოყენება ხდება ინტერნეტ ბრაუზერების საშუალებით. ეპოქაში, სადაც არის მაღალი საპასუხისმგებლო პროგრამული პროცესები, სადაც მრავალი ორგანიზაცია იყენებს Agile (მაგ., ექსტრემალური დაპროგრამების) მეთოდოლოგიას, ტესტირების ავტომატიზაცია ხდება დღითიდღე პოპულარული. პროგრამული პროდუქტის ეფექტურ ტესტირებას დიდ მნიშვნელობას ანიჭებს კომპანიები და ორგანიზაციები. პროგრამული უზრუნველყოფის ტესტირების ავტომატიზაცია ნიშნავს სპეციალური პროგრამული ინსტრუმენტის გამოიყენებას, რომლითაც შესაძლებელია სატესტირებელი პროგრამის მრავალჯერადი ტესტირება. ტესტირების ავტომატიზაციას გააჩნია სხვადასხვა უპირატესობები, რომელთაგანაც აღსანიშნავია მისი განმეორებადობა, საიმედოობა და სიჩქარე, რომელიც საჭიროა ტესტის გასაშვებად [2].
ცხადია, თუ მოვახდენთ ჩვენი პროგრამული პროდუქტის ავტომატურ ტესტირებას, ეს იქნება გარანტი შეცდომების თავიდან აცილების, პროგრამის საიმედოობის, ტესტირების დროის დაზოგვის, პროცესის დაჩქარების. მაგრამ არის პროგრამების ავტომატური ტესტირება ყოველთვის ხელსაყრელი ? ის არ არის ყოველთვის მიზანშეწონილი. მაგალითად, წარმოვიდგინოთ პროგრამული პროდუქტი, რომლის სამომხმარებლო ინტერფეისი ხშირად იცვლება, ამ შემთხვევაში მატესტირებელი სკრიპტების ცვლილება გარდაუვალია. ასევე როცა დასატესტირებელი პროგრამა პატარა და მარტივია, ამ შემთხვევებში ხელით ტესტირება უფრო მისაღებია, ვიდრე მისი ავტომატიზაცია. თუ აპლიკაცია სრულდება მოკლე ვადებში, მაშინ ხელით ტესტირება საუკეთესო გადაწყვეტილებაა, რადგან ტესტირების ავტომატიზაციას სჭირდება მეტი დრო [3].
თანამედროვე ინფორმაციულ ტექნოლოგიებში გავრცელებულია მრავალი კომერციული და უფასო პროგრამული ინსტრუმენტი, რომელთა საშუალებითაც შესაძლებელია ავტომატური ტესტირების განხორციელება. მათ შორის Selenium პროგრამა შესაძლოა განვიხილოთ როგორც ყველაზე უფრო ფართოდ გავრცელებული და გამოყენებადი უფასო Open Source ტესტირების ინსტრუმენტი [4]. იგი შედგება სხვადასხვა პროგრამული პროდუქტისგან, თვითოეული მათგანი თავისი ფუნქციებით უზრუნველყოფს ტესტირების ავტომატიზაციას. მისი პროგრამული ინსტრუმენტების სიმრავლე საშუალებას გვაძლევს, რომ დავატესტიროთ Web-აპლიკაციები ჩვენი მოთხოვნების შესაბამისად [1].
Selenium უფასო Open Source პროგრამული პროდუქტია, განკუთვნილი Web აპლიკაციების ავტომატური ტესტირებისთვის. Selenium ტესტ-სკრიპტები შესაძლებელია შეიქმნას თანამედროვე პროგრამირების ენებზე როგორიცაა: C#, Java, Groovy, Perl, PHP, Python და Ruby. იგი თავსებადია Windows, Linux, Macintosh ოპერაციულ სისტემებთან [5].
Selenium შეიქმნა 2004 წელს Jason Huggins- ის მიერ ToughtWorks კომპანიაში. მან გაანალიზა, რომ უკეთსი იქნებოდა დაეზოგა ხელით ტესტირებისთვის საჭირო დრო და განეხორციელებინა ერთიდაიგივე ტესტი ავტომატურად, ყოველი პროგრამული ცვლილებისას. მან შექმნა JavaScript ბიბლიოთეკა, რომლითაც შეეძლო ემართა Web – გვერდი. ამ ბიბლიოთეკას ეწოდა Selenium Core, რომელიც საფუძვლად დაედო Selenium Remote Control(RC)-ს და Selenium IDE-ს. Selenium RC იყო ინოვაცია, რადგან არცერთ სხვა პროდუქტს არ შეეძლო ეკონტროლებინა Web ბრაუზერი პროგრამული ენის საშუალებით [6].
პროგრამის ბაგი (bug) არის შეცდომა, ხარვეზი კომპიუტერულ პროგრამაში ან სისტემაში, რომელიც იძლევა არასწორ შედეგს. ბაგების უმრავლესობა წარმოიქმნება შეცდომებისგან, რომლებიც დაშვებულია ადამიანის მიერ შექმნილ პროგრამულ კოდში ან დიზაინში.

სტატიის გადმოწერა



——————————————————————–

Facebook Twitter Email Linkedin Google