Симптоми

Користење на надворешни SOAP услугиОперации
SOAP (протокол за пристап до едноставен објект) е стандардизиран протокол за пренос на пораки помеѓу клиент и сервер. Обично се користи во врска со HTTP(S), но може да работи и со други протоколи на апликациски слој (како SMTP и FTP).Тестирањето на SOAP од гледна точка на техниките за тестирање не е фундаментално различно од работата со други API, но бара

прелиминарна подготовка

(во однос на теоријата на протокол) и специјални алатки за тестирање. Во оваа статија, би сакал да формулирам мала листа за проверка на потребните знаења и вештини, кои ќе бидат подеднакво корисни и за SOAP тестер (кој честопати нема поим за што да се фати по поставувањето на задачата) и за менаџер кој е принудени да го проценат знаењето на тестерите и да развијат планови за обука.

Теоретска основа
Фактот дека SOAP е протокол има многу импликации за тестирање: треба да го проучите самиот протокол, „примарните“ стандарди и протоколи на кои се заснова, и (по потреба) постоечките екстензии.



XML
XML е јазик за обележување сличен на HTML. Секоја порака испратена/примена преку SOAP е XML документ во кој податоците се практично структурирани и лесни за читање, на пример:
Јулија
Наташа

Потсетник

Не заборавајте да напишете статија!
Можете да дознаете повеќе за XML на w3schools или codenet (на руски). Бидете сигурни да обрнете внимание на описот на именските простори (метод за решавање конфликти при опишување на елементи во XML) - нивната употреба е потребна во SOAP.

...







...

XSD
Во вашата работа, исто така, може да наидете на различни „екстензии“ на SOAP - стандарди како WS-*. Еден од најчестите е WS-Security, кој ви овозможува да работите со шифрирање и електронски потписи. Често, заедно со него се користи и WS-Policy, со кој можете да управувате со правата за користење на вашата услуга.

Пример за користење на WS-Security:


Алис
6S3P2EWNP3lQf+9VC3emNoT57oQ=
YF6j8V/CAqi+1nRsGLRbuZhi
2008-04-28T10:02:11Z

Сите овие екстензии се прилично сложени структури кои не се користат во секоја услуга SOAP; нивната детална студија во почетната фаза на совладување на тестирањето на SOAP веројатно нема да биде релевантна.

Алатки

Како што веќе разбирате, SOAP е сериозна работа за да работите со него, треба да ја знаете теоријата и бројните стандарди. Во пракса, таквата сложеност ќе доведе до многу значителни трошоци за работна сила (на пример, секој пат ќе треба да го гледате дијаграмот во тетратка и да испраќате барања со навивам). Затоа, создадени се алатки за да се олесни работата со SOAP.

XML/XSD уредници
Добриот тестер започнува со тестирање во фазата на пишување документација, па затоа е погодно да се користат специјални уредници за тестирање кола. Двете најпознати се Оксиген (крос-платформа) и Алтова (само за Windows); и двајцата се платени. Ова се многу моќни програми кои аналитичарите активно ги користат кога ги опишуваат услугите.

Во мојата пракса, три функции на уредувачот се покажаа корисни: визуелизација на XSD, генерирање XML врз основа на XSD и валидација на XML врз основа на XSD.

1. XSD визуелизацијапотребни за визуелно прикажување на дијаграмот, овозможувајќи ви брзо да ги идентификувате потребните елементи и атрибути, како и постоечките ограничувања. На пример, за CheckTextRequest, потребен е текстуален елемент и сите три атрибути се опционални (при што атрибутот опции има стандардна вредност нула).

Визуелизацијата е неопходна кога има многу видови и ограничувања во дијаграмот. Ако ви треба само ова и не сакате да плаќате за специјални уредници, тогаш можете да размислите за бесплатни алтернативи (на пример, JDeveloper).

2. XML генерација базирана на XSDкорисно кога сакате да видите валиден пример на порака. Го користам за брзо експериментирање со можните завршувања на пораките и за тестирање на нијансите за тоа како функционираат ограничувањата.

3. По користењето на функцијата од точка 2, корисно е да се изврши XML валидација против XSD– односно проверете ја исправноста на пораката. Заедно, функциите 2 и 3 ви овозможуваат да ги фатите незгодните дефекти во XSD дури и кога самата услуга е во развој.

Алатка за тестирање - SoapUI

Тестирањето на САПУН речиси секогаш вклучува користење на SoapUI. Можете да прочитате за користењето на оваа алатка во различни извори (,), но најефикасно ќе биде да ја прочитате официјалната документација. Идентификувам 8 условни нивоа на владеење со SoapUI:

Ниво 1 - Можам да испраќам барања
Научете да креирате проект базиран на WSDL. SoapUI може да ги генерира сите потребни прашања за вас; Сè што треба да направите е да проверите дали се пополнети правилно и да кликнете на копчето „Испрати“. Откако ќе ги развиете вештините за креирање валидни барања, мора да ја совладате уметноста на креирање неточни барања што предизвикуваат грешки.

Ниво 2 - Можам да правам тест пакети и тест случаи
Почнете да правите мини-автотест. Тест комплетите и случаите за тестирање ви дозволуваат да креирате скрипти за тестирање на API, да подготвувате податоци за барања и автоматски да го проверувате добиениот одговор за да се осигурате дека одговара на очекуваното. Отпрвин, тие можат да се користат едноставно како збирки на прашања. На пример, ако сте создале дефект и сакате брзо да го проверите откако ќе го поправите, можете да одвоите посебен комплет за тестирање специјално за барања за дефекти.

Ниво 3 – Можам да пишувам тврдења
Откако ќе ги совладате тест случаите, ќе ви биде корисно да научите како да ги направите автоматски проверливи. По ова, повеќе нема да треба со очи да барате информации за одговорот: ако има автоматска проверка, случаите ќе бидат означени со зелена боја (ако проверката е положена) или црвено (ако не е положена). SoapUI обезбедува голем сет на можни тврдења, но најзгодните и наједноставните се Содржи и Не содржи. Со нивна помош можете да ја проверите достапноста конкретен текство добиениот одговор. Овие проверки поддржуваат и пребарувања со редовни изрази.

Ниво 4 - користете XPath и/или XQuery во тврдењата
За оние кои се малку запознаени со UI со користење на Selenium, јазикот XPath е позната работа. Грубо кажано, XPath ви овозможува да пребарувате елементи во XML документ. XQuery е слична технологија која може да го користи XPath внатрешно; овој јазик е многу помоќен, наликува на SQL. И двата од овие јазици може да се користат во тврдењата. Проверките со нивна помош се повеќе насочени и постабилни, така што вашите случаи ќе уживаат поголема доверба.

Ниво 5 – Можам да пишувам сложени тестови користејќи специјални чекори

Тест случаите може да содржат не само едно барање, туку и неколку (на пример, кога сакате да го имитирате стандардното корисничко сценарио „создај ентитет“ → „извозен ентитет“). Може да има други посебни чекори помеѓу барањата, на пример:

  • Својства и пренос на имот (помогнете да ги користите податоците и да ги пренесете помеѓу барањата);
  • JDBC Request (се користи за преземање податоци од базата на податоци);
  • Условно Goto (ви овозможува да направите гранки или јамки во тест случајот);
  • Стартувај TestCase (помага да се стават некои типични прашања во посебни тест случаи и да се повикаат таму каде што е потребно).

Ниво 6 - користење скрипти Groovy

SoapUI ви овозможува да пишувате Groovy скрипти на различни места. Наједноставниот случај е да се генерираат податоци во самото барање со помош на инсерти $(=). Ги користам овие инсерти цело време:

  • $(=нов датум()– да се вметне тековниот датум и време во бараниот формат;
  • $(=java.util.UUID.randomUUID())– да се вметне правилно формиран случаен GUID.

Целосните скрипти може да се користат како чекори во случаи и проверки. Во одреден момент, ќе откриете дека неколку специјални чекори од петтото ниво може да се заменат со една скрипта.

Ниво 7 - користење на MockServices
SoapUI базиран на WSDL може да генерира Mock објекти. Проценет објект е наједноставната симулација на услуга. Со помош на „потсмевања“ можете да започнете со пишување и дебагирање тест случаи дури и пред услугата да биде навистина достапна за тестирање. Може да се користат и како „никулци“ за привремено недостапни услуги.

Ниво 8 – SoapUI God
Дали ја знаете разликата помеѓу платено и бесплатни верзии SoapUI и користете го SoapUI API во код. Користите додатоци и извршувате случаи преку командната линија и/или CI. Вашите тест случаи се едноставни и лесни за одржување. Во принцип, на овој инструмент го „изедовте кучето“. Би сакал да разговарам со некој кој го совладал SoapUI на ова ниво. Ако сте еден, пријавете се во коментарите!

Тестирање со програмски јазици

Еве пример за тоа како изгледа барањето до YandexSpeller API, направено со помош на groovy-wslite:

увезете wslite.saap.*
дефинитивен клиент = нов SOAPClient ("http://speller.yandex.net/services/spellservice?WSDL")
def answer = client.send(SOAPAction: "http://speller.yandex.net/services/spellservice/checkText") (
тело (
CheckTextRequest("lang": "ru", "xmlns":"http://speller.yandex.net/services/spellservice") (
текст („грешка“)
}
}
}
наведете „грешка“ == answer.CheckTextResponse.SpellResult.error.s.text()
тврди „1“ == [заштитена е-пошта]()

Колку што знам, сè уште нема рамки на високо ниво (како Rest-assured) за тестирање на SOAP, но неодамна се појави интересна алатка - карате. Со негова помош, можете да опишете случаи за тестирање САПУН и ОСТАНОК во форма на скрипти како краставица / корнишони. За многу тестери, свртувањето кон карате ќе биде идеално решение, бидејќи таквите сценарија, во однос на сложеноста на пишувањето и придружните случаи, ќе лежат некаде на средината помеѓу користењето на SoapUI и пишувањето сопствена рамка за тестирање SOAP.

Заклучок

Малку е веројатно дека некогаш ќе сакате да го тестирате САПУН само за себе (како што би можеле со REST). Ова е протокол со тешка тежина што се користи во сериозни решенија за претпријатија. Но, неговата тежина е во исто време подарок за тестерот: сите употребени технологии се стандардизирани, а има и висококвалитетни алатки за работа. Сè што се бара од тестерот е желбата да ги научи и користи.

Ајде да ја составиме истата листа за проверка на потребните вештини за тестер. Значи, ако штотуку почнувате да ги тестирате услугите на SOAP, треба да знаете и да можете да користите:

  • WSDL.
  • САПУН.
  • XML/XSD уредници (на ниво на визуелизација на XSD).
  • SoapUI на ниво 1.

Како што можете да видите, главниот акцент е на учење на стандардите во SoapUI, доволно е само да можете да извршите прашања. Додека се нурнувате во тестирањето на САПУН, ќе наидете на задачи кои ќе бараат посериозни вештини и знаење, но не треба да се обидувате да научите сè одеднаш. Доследноста во зголемувањето на нивото на сложеност на извршените задачи е многу поважна. Следејќи ја оваа препорака, еден ден ќе сфатите дека сте станале добар специјалист во оваа област!

Веб услуги во 1C

Оваа статија ќе разговара за интеграцијата на 1C со постоечките веб-услуги и употребата на самиот 1C како веб-услуга.

Во овој случај, веб-услугите ќе се разберат како системи кои работат на Интернет и обезбедуваат интеракција со нив не само преку SOAP (што е токму веб-услуга), туку и на други начини, вклучувајќи редовни барања за HTTP(S).


Ризици од користење на веб-услуги 1C

Платформата 1C81 воведе имплементација на веб-услуги.

Но, нивната употреба е полн со ризици:

  1. 1C8 не работи добро преку HTTPS, нема дијагностички алатки, па понекогаш е невозможно да се разбере зошто, дури и ако има сертификат, услугата не сака да работи преку HTTPS. Решението е да се имплементираат веб-услуги преку CURL или да се подигне HTTPS тунел.
  2. 1C8 се придржува до своите правила за потврдување на WSDL шемите. Понекогаш, од необјасниви причини, WSDL шемата не сака да се вчита во врската WS. Причината можете да ја дознаете само на партнерскиот форум од еден специјалист. Не постојат алатки за дијагностика на WSDL шема, дури ни причината или линијата на која се прекинува вчитувањето на шемата.

Правила за градежни услуги за продажба

На клиентот му се издава продажен документ (потврда) само доколку трансакцијата на услугата е успешна. Во спротивно, можна е ситуација кога клиентот добива чек и е уверен дека добил услуга, а всушност не.

Користење на надворешни SOAP услуги

Веб-услугите на SOAP користат WSDL шеми и XDTO објекти за да претставуваат податоци.

Се вчитува WSDL

За да користите надворешна услуга, треба да ја преземете нејзината WSDL шема.

Проверка на валидноста на WSDL шемата

Понекогаш WSDL шемата не се вчитува во 1C. Можете да ја проверите валидноста (исправноста) на шемата користејќи кој било валидатор на WSDL шема, на пример http://www.validwsdl.com/.

Треба да ја поставите шемата на некоја http-локација (можете да користите ftp) и да ја наведете адресата на датотеката во која е вчитана шемата:

Карактеристики на вчитување WSDL во 1C

Особеноста на вчитувањето на WSDL во 1C е дека валидните шеми може да не се вчитаат. Нема вграден валидатор, така што мора да барате грешка користејќи деструктивна анализа, сукцесивно намалувајќи го бројот на елементи во колото. Можете, на пример, да го избришете описот на веб-услугата.

Обработка за тестирање на надворешна веб-услуга што работи

За да тестирате работна надворешна веб-услуга, користете ја обработката „Test ArbitraryWebService.epf“ од пакетот за овој напис.

Тестирањето може да се користи користејќи го примерот на услугата Morpher, која ги одбива имињата (адреса на услугата http://www.morpher.ru/WebServices/Morpher.asmx?WSDL):

На овој начин, можете да тестирате која било услуга што има едноставни влезни точки кои содржат параметри од едноставни типови: број, датум, низа.

За време на обработката, можете исто така да ги наведете најавувањето и лозинката што се потребни за да се овласти пристап до веб-услугата.

Стандардни алатки за услуги за дебагирање

За дебагирање, можете да ја користите програмата SoapUI, која може да испрати произволно барање до веб-услуга и да добие одговор од неа.

САПУН и HTTPS

За жал, SOAP во 1C се однесува прилично каприциозно кога работи преку протоколот HTTPS, практиката покажува дека е невозможно да се постигне HTTPS врска, иако можноста е декларирана во платформата. Недостигот на алатки за дијагностика и дебагирање за да се откријат причините поради кои врската не е воспоставена го зема својот данок. Затоа, погодно е да се користи САПУН преку CURL.

Вградениот механизам за користење HTTPS имплицира дека сите сертификати мора да бидат објавени во заедничка pem-датотека во програмскиот директориум 1C.

Користење на 1C како услуга

Правила за развој на услуга базирана на 1C

Операција Здраво

Правилото за добра форма е да се создаде операција во сервисот што информира дека услугата е достапна. Ова им го олеснува животот на интеграторите, ќе им биде полесно да проверат дали е воспоставена комуникација со услугата.

На пример, можете да ја користите операцијата Hello без параметри, која едноставно ја враќа Буловата вредност True.

Објавување на веб-услуга

Постапката е добро опишана во документацијата: file:///C:/Program%20Files/1cv81/AddDoc/RU/V8AddDoc81.htm#_Toc176167634:

Задачата за објавување на веб-услугите се сведува на поставување на конфигурациските датотеки *.1cws на веб-услугите во соодветниот директориум на веб-серверот со соодветните поставки за веб-серверот. За да објавите веб-услуги, треба да ја извршите командата од менито „Администрација | Објавување на веб-услуги“.

Како резултат на извршување на оваа команда, ќе се отвори прозорецот за објавување на веб услуги.

Прозорецот за објавување на веб-услуги ја содржи патеката до веб-серверот и две листи:

  • „Веб-услуги“ - список на конфигурациски веб-услуги;
  • „Публикација“ - список на веб-услуги објавени на наведениот веб-сервер.

Користејќи го копчето „Поврзување...“, треба да го наведете веб-серверот на кој сакате да објавувате веб-услуги.

Прозорецот за избор на патека на веб-серверот ви овозможува да ја одредите патеката на два начина:

  • на табулаторот „Датотеки“ - овој метод се користи кога објавувањето се врши на истиот компјутер на кој е инсталиран веб-серверот. Патеката е локален директориум што одговара на интернет страницата од која ќе се повика објавениот веб-сервер;
  • на табулаторот „FTP-страница“ - овој метод се користи кога треба да објавите веб-услуга на оддалечен компјутер. За објавување, мора да ги наведете параметрите на FTP конекцијата со оддалечениот компјутер и директориумот во кој ќе биде објавена веб-услугата.

Избраната веб-услуга се објавува со помош на копчето „Објави“.

За да откажете објавување на веб-услуга, користете го копчето „Избриши“.

Можете да објавувате во локален директориум или преку FTP. Можете исто така да објавувате на оддалечен сервер преку патека UNC ако оддалечениот сервер е дел од локалната мрежа.

По објавувањето, веб-услугата е достапна на адресата „http://localhost/test.1cws“ или „http://xxx.ru/test.1cws“, каде што xxx.ru е адресата на оддалечениот сервер и локалниот хост е типичната адреса на локалниот сервер.

Овластување на веб-услугата 1C

За да пристапите до услугата, треба да поминете автентикација.

Проблемите со овластувањето се добро разгледани овде: http://www.forum.mista.ru/topic.php?id=341168 и во документациската датотека:///c:/Program%20Files/1cv81/AddDoc/RU/V8AddDoc81. htm

Вообичаено, веб-услугата работи под еден специфичен корисник (обично специјално креиран). Можете да „прикачите“ корисник 1C користејќи автентикација на Windows на корисникот на Windows IUSR_ (оневозможи овластување 1C за корисникот). Алтернативно, можете да го исчистите списокот со корисници на 1C, тогаш не е потребно овластување.

Ако се потребни неколку корисници, тогаш можете да креирате неколку најавувања за веб-серверот, да доделите корисник на Windows на секој од нив и, соодветно, да регистрирате пристап до корисниците на Windows во 1C.

Во својствата Корисник и Лозинка на објектот WSProxy, не се користи најавувањето 1C, туку најавувањето на корисникот на веб-серверот.

Тестирање на веб-услуга 1C

За да го тестирате 1C како веб-услуга, користете ја обработката „Test ArbitraryWebService.epf“, како што е опишано во делот „Тестирање на надворешна веб-услуга што работи“.

Датотеката 1cws е WSDL опис на веб-услугата 1C.

Користење на услуги во малопродажба

Вообичаено, малопродажните услуги се користат за обезбедување на различни услуги на населението - прифаќање плаќања, отплата на заеми, Трансфер на пари, купување софтвери така натаму.

Во овој случај, во 1C се генерира потврда за дадената услуга, во која се зачувуваат параметрите на трансакцијата. По што оваа проверка се печати на клиентот со детални информацииза дадената услуга. Можно е да се испечати прелиминарна проверка така што клиентот со својот потпис ги потврди податоците внесени од неговите зборови.

Услугата може да се интегрира на различни начини во програма за малопродажба напишана на јазикот 1C (UT, Retail и други):

  1. Обработката или кодот може да се напишат на јазик 1C, кој ја извршува целата работа со услугата.
  2. Може да се користи програма што работи со услугата, а во 1C пренесува само информации за проверки со удирање.

Организација на сервисни податоци во 1C

За да зачувате информации за трансакција во потврда, треба да креирате дополнителен табеларен дел „Комплексна продажба“ со детали:

  • Номенклатура - врска до номенклатурата на чекот.
  • Параметар - врска до референтната книга „Комплексна продажба: параметри“.
  • Вредност - вредноста на параметарот, комплексен тип. Претставувањето на низата мора да биде прилично долга (1024 знаци) за да се приспособи на текстот за проверка.

Директориумот „Комплексна продажба: параметри“ содржи листа на параметри на трансакцијата.

Попрофитабилно е да се користи табеларниот дел отколку збир на детали, бидејќи трансакцијата може да има многу од нив, а при други проверки кои не се поврзани со услугата, овие детали нема да се користат и ќе заземат дополнителен простор. Покрај тоа, таквото решение е универзално за секоја услуга и не бара реструктуирање на податоците по имплементацијата на нова услуга.

На продавачот му се дава посебна ознака (или печатена форма, за да не се промени конфигурацијата), во која тој може да ја види табличката со детали за трансакцијата за проверката.

Користење на обработка на јазик 1C

Да го погледнеме примерот на условната услуга Paym за конфигурацијата „Малопродажба“.

  1. Ајде да создадеме предефиниран елемент од директориумот за номенклатура „Плати“ во 1C. Во режимот 1C: Enterprise, по ажурирањето на конфигурацијата, треба да му се додели типот на производ „Услуга“.
  2. Во постапката „Додај ставка во табела. дел“ од модулот за формулари „Регистрација за продажба“, го нарекуваме обработка на работа со услугата, напишана на јазикот 1C. Доколку плаќањето е успешно, го снимаме и објавуваме чекот:
Ако (Номенклатура = Директориуми. Номенклатура.Плати) И (Тип на трансакција за пренос. Видови операции Проверете KKM. Враќање) Потоа Обработка на плаќање = Функции Дајте надворешна обработка („Плаќање“);
  1. PaymentForm = PaymentProcessing.GetForm();
  2. Резултат = PaymentForm.OpenModal();
Во спротивно, Ако видот на трансакција за пренос.Видови операцииПроверете KKM.Return And Selection.NomenclatureLink = Directories.Nomenclature.Paym Потоа //Osipov PaymMaster ComplexSales Line = ComplexSales.Find(Directories.ComplexSalesParametersTaperexties.

Ако комплексната продажна линија е недефинирана, тогаш Product.Name = Скратено LP (Комплексна продажна линија. Вредност);

крајАко;

Посебно прашање е како да се обезбеди завршување на трансакцијата. Оние. ако трансакцијата се случила во услугата, како да се осигурате дека не е изгубена во 1C. Најоптимален начин е да се усогласат регистрите. Но, ова е тема за посебно разгледување.

Користење на програми кои се интегрираат со 1C

XDTO

XDTO често се користи во веб услуги. Еве ги најважните совети и рецепти за користење на XDTO во 1C.

XDTO во платформата 1C

XDTO пакетите, опишани во гранката „XDTO објекти“ на конфигурацијата, се достапни за креирање типови и објекти во глобалната фабрика XDTO Factory. Ова не е веднаш очигледно.

Некои типови во шемата немаат име за да ги добиете, треба да поминете низ хиерархијата на типот.

Примерот опиша системски список кој содржи XDTO структури. За да ја креирате самата структура, требаше да го добиете нејзиниот тип вака:

Type = Factory.Type ("urn:my.ru:MasterData:Business", "Business").Properties.Get("Систем").Type;

Вообичаени проблеми со XDTO Различни формати на XSD шемаВо некои формати, ознаките се нарекуваат xs:, во некои xsd:, но 1C безбедно ги разбира двата формати. Еднаш имаше ситуација кога XSD беше увезен во 1C нормално без грешки, но не создаде ниту еден пакет. Причината беше отсуството на атрибут

Простор со име на цел

на ознаката, соодветно, 1C не знаеше во кој пакет да го постави дијаграмот, но не генерираше грешки.

Сервисна поддршка

Имајќи предвид дека услугата е комбинација од два системи - 1C и надворешен, може да се појават грешки и во двата системи, што ја намалува севкупната сигурност на работењето.

За полесно да се разберат причините за неуспесите на услугата, се препорачува да се користат збир на мерки.

  • Барања за евиденција
    • Врски
  • XDTO
    • Добар опис на XDTO http://pro1c.org.ua/index.php?showtopic=214
    • Бесплатни интересни веб-услуги:
  • Аерофлот - информации за распоредот на авионите
    • Morpher - деклинација на имиња http://www.morpher.ru/WebServices/Morpher.aspx
      • Несоставен:
      • Инсталирање и користење на веб-услуги
      • v8: како да ја смените конфигурациската датотека на apache?
      • Книга на знаење: v8: Користење на надворешни веб-услуги во 1C: Enterprise 8;

ВО последните годиниУпотребата на API и потпирањето на веб-услугите се зголемија. Еве список од 12 алатки за тестирање на веб-услуги кои значително ќе ви помогнат.

Во текот на изминатите неколку години, популарноста и употребата на веб-услуги или API-и се зголемија. Веб-услуга или API е збир на процедури или софтверски компоненти кои и помагаат на апликацијата да комуницира или да изврши некој процес/трансакција преку формирање на врска помеѓу друга апликација или сервер. Постојат главно два вида веб-услуги: REST и SOAP за пренос на податоци и информации преку Интернет протокол.

Бидејќи овие веб-услуги се достапни на Интернет и дистрибуирани низ различни мрежи, тие се ранливи на вируси и безбедносни закани кои влијаат на процесите што се потпираат на нив. Затоа, тестирањето на веб-услугите или API-ите станува неопходно за да се осигура дека тие функционираат правилно и правилно одговараат на барањата. Тестирањето на софтверот е перспективна област во ИТ областа на која можете да го добиете потребното знаење

Постојат неколку комерцијални и бесплатни алатки за тестирање на пазарот за тестирање на нивната поврзаност, одговор и перформанси. Овие алатки за тестирање го автоматизираат тестирањето за одредено сценарио како што се функционално тестирање, тестирање на оптоварување, тестирање на перформанси итн.

Еве 12 одлични алатки за тестирање на веб-услуги што треба да ги земете во предвид за вашите барања за тестирање на API или веб-услуги:

Сапун UI

SoapUI е алатка за тестирање меѓу платформи со отворен код. Може да ги автоматизира функционалните, регресивните, конзистентните и оптоварувачките тестови на услугите SOAP и REST. Лесен е за користење и поддржува напредни технологии и стандарди за моделирање и поттикнување на однесувањето на веб-услугите.

Клучни карактеристики:

  • Обезбедува извештаи за печатење, извоз и HTML на ниво на Project, TestSuite, TestCase или LoadTest.
  • Интероперабилност со Hudson, Bamboo, Maven, ANT и JUnit.
  • Ви овозможува да развиете сопствен сет на функции во форма на приклучоци SoapUI.
  • Ги снима, следи и прикажува сите податоци.
  • Поддржува WS-Security и SSL дешифрирање.

TestingWhiz

TestingWhiz е алатка за автоматизација на тестови „без код“ која е компатибилна со API/веб-услуги. Ви овозможува да вршите тестирање на функционална, интероперабилност и оптоварување и да работите со веб-услугите REST и SOAP преку WSDL интерфејс преку HTTP и FTP.

Клучни карактеристики:

  • Поддржува споредба на низи за да се потврди одговорот на API.
  • Помага во пронаоѓањето на дефекти на API користејќи интегрирани алатки за следење проблеми како JIRA, Mantis и Fogbugz.
  • Генерира визуелни дневници и извештаи за тестирање преку е-пошта.
  • Обезбедува континуирана интеграција со Jenkins, Bamboo & Hudson.
  • Поддржува тестирање на податоци и клучни зборови.

SOAPSonar

SOAPSonar обезбедува тестирање на веб-услуги од крај до крај за HTML, XML, SOAP, REST и JSON. Обезбедува функционални, перформанси, компатибилност и безбедносно тестирање со користење на стандардите OASIS и W3C.

Клучни карактеристики:

  • Поддржува тестирање за ранливост на XSD мутација.
  • Обезбедува сеопфатна анализа на WSDL и Шема.
  • Врши тестирање на оптоварување со симулација на однесување и повеќекратни истовремени процеси на оптоварување.
  • Обезбедува извештаи во XML, DOC, XLS, PDF, RTF и RPT формати.
  • Интеракција со Центарот за квалитет на HP.

SOAtest

SOAtest е алатка за тестирање и потврдување на API и апликации управувани од API. Обезбедува поддршка за робусни функционални блокови, интеграција, безбедност, симулација, тестирање на оптоварување користејќи технологии како што се REST, JSON, MQ, JMS, TIBCO, HTTP и XML.

Клучни карактеристики:

  • Обезбедува тестирање од крај до крај
  • Поддржува над 120 протоколи/типови пораки.
  • Доаѓа со лесен за користење интерфејс.
  • Ви помага да креирате сложени, проширливи и повторно употребливи тестови без кодирање.
  • Поддржува континуирано тестирање за интеграција

ТестМејкер

TestMaker е алатка со отворен код за тестирање и следење на перформансите на веб-услугите и SOA апликациите користејќи PushtoTest. Работи на Jython (Python напишан на Java). TestMaker може да ги пренамени тестовите за Selenium, SoapUI тестовите, Sahi тестовите или сите тестови напишани во Groovy, Java, Python, PHP, Ruby и Perl во функционални тестови за вчитување.

Клучни карактеристики:

  • Користи барање за командна линија за тестирање на функционалноста, оптоварувањето и перформансите.
  • Интуитивен изгледсо стандарден IDE со повеќе прозорци.
  • Обезбедува контролен панел за извршување на тестови и прикажување на резултатите во реално време.
  • Овозможува пристап до сите Java библиотеки и класи на јазикот Jython.

Поштар

Поштар е уште една алатка за тестирање на API/веб-услуги која има моќна поддршка за HTTP клиент. Има лесен за користење создавач на прашања што ви овозможува да пишувате тест случаи и да управувате со податоците за одговор и времето на одговор за ефикасно тестирање и управување со случаите за тестирање API.

Клучни карактеристики:

  • Дозволува API да се организираат во функции наречени склопови на Postman.
  • Олеснува соработка и споделување на податоци и контроли на API.
  • Ви овозможува да пишувате логички тестови во интерфејсот на поштарот.

vОдмор

VRest е алатка дизајнирана за тестирање, бенчмаркирање на REST APIS и веб-услуги. Исто така, поддржува тестирање на веб, мобилни и десктоп апликации кои имаат интеракција со API од трети страни или HTTP услуги.

Клучни карактеристики:

  • Има функционалност за потсмев на серверот за креирање потсмевни API за неколку минути.
  • Постои екстензија на Chrome за снимање и репродукција на тест случаи.
  • Поддржува интеграција со Jenkins за континуирано работење на серверот и Jira за следење проблеми.
  • Го олеснува управувањето со дозволите.
  • Ви овозможува да извезувате и увезувате тест случаи и извештаи од надворешни алатки како што се Postman Collections, Swagger 2.

HttpMaster

HttpMaster е уште една ексклузивна алатка за тестирање на веб-услугите REST. Им помага на тестерите да го тестираат однесувањето на REST API и да го потврдат излезот во формати како што се XML, JSON и HTML. Со својата универзална HTTP алатка, HttpMaster исто така му помага на развивачот да ја моделира активноста на клиентот и однесувањето на одговорот на апликацијата API.

Клучни карактеристики:

  • Има лесен за користење и елегантен кориснички интерфејс кој не бара напредни технички вештини.
  • Користи HTTP методи како што се GET, POST, DELETE итн.
  • Обезбедува Различни видовии тестирајте изрази за да го олесните тестирањето.
  • Го користи интерфејсот на командната линија за креирање и извршување на тест.
  • Ви овозможува да ги зачувате сите информации - повици на API и проектни податоци на едно место.

Runscope

Runscope е едноставна алатка за тестирање и следење на перформансите на API. Runscope, исто така, поддржува тестирање на API-и и заднина на мобилни апликации.

Клучни карактеристики:

  • Ви овозможува да креирате тестови со динамични податоци дури и за сложени случаи.
  • Прикажува метрика и аналитика за да ги идентификува проблемите.
  • Работи со алатки како HipChat, Webhooks, Slack и PagerDuty за известување за неуспех на API.
  • Ви овозможува повторно користење и извршување на тестови на повеќе места.
  • Олеснува централизирано управување со тестовите за подобрена соработка.

Силување

Rapise е робусна алатка за автоматизација со моќни и проширливи карактеристики. Се заснова на отворена и флексибилна архитектура за брзо функционално тестирање на веб-услугите REST/SOAP. Rapise, исто така, обезбедува поддршка за тестирање на веб-апликации вградени во Java, .NET, Ajax, Silverlight и Flash.

Клучни карактеристики:

  • Користи стандардни HTTP методи како што се POST, GET, PUT и DELETE.
  • Ви овозможува да складирате барања за прототип на одредена веб-услуга.
  • Содржи вграден градител на дефиниција REST и библиотека на објекти.
  • Има моќни способности за известување.
  • Поддржува тестирање со вкрстени прелистувачи и паралелно извршување.

WebInject

WebInject е бесплатна алатка за автоматско функционално, прифаќање и регресивно тестирање на веб-услугите. Тоа е алатка за командна линија и се базира на Perl, што го олеснува извршувањето на тестовите бидејќи нема потреба да се троши време на командната линија. Исто така, нема интерфејс IDE, што значи дека тестовите се напишани надворешно кориснички интерфејс WebInject. Може да работи на платформи со Perl преведувач.

Клучни карактеристики:

  • Обезбедува прикажување на резултатите во реално време.
  • Го следи времето на одговор на системот.
  • Поддржува различни намени - и полноправна платформа за тестирање и самостоен тестер.
  • Создава извештаи во HTML и XML формати.
  • Овозможува интеграција со друг систем како додаток за надворешно следење.

Бура

Конечно, Storm е уште една алатка со отворен код од CodePlex за тестирање на веб-услуги напишани во Java или .NET. Во моментов поддржува само веб-услуга SOAP.

Клучни карактеристики:

  • Ви овозможува да тестирате повеќе веб-услуги од еден кориснички интерфејс.
  • Помага во уредување на необработени барања за SOAP.
  • Овозможува упатување на методи на веб-услуги кои содржат сложени типови на податоци.
  • Поддржува тестирање на WCF апликации.

Се разбира, списокот не завршува тука, бидејќи има огромна разновидност на алатки за тестирање на веб-услуги.

Пријавете се сега или побарајте повик со бесплатна консултација!

Во денешно време, ретко се случува модерна апликација да функционира без API. Ова важи и за едноставна веб-локација и за високо оптоварени дистрибуирани системи. Тестирањето на API е една од главните задачи во процесот на обезбедување квалитет. Не е изненадувачки што побарувачката за тестери кои знаат како да тестираат API се зголемува од ден на ден. Во овој курс, ќе се здобиете со разбирање за методите, алатките и пристапите во тестирањето на API, ќе го стекнете потребното знаење, што несомнено ќе има позитивен ефект врз вашата вредност како специјалист за тестирање.

Овој курс ќе биде корисен за студентите запознаени со основите на софтверското тестирање кои сакаат да растат понатаму и да ги подобрат своите вештини.

Програма на курсот:

Лекција 1. Воведен. SOAP протокол

  • Накратко за предавачот;
  • Цели на курсот;
  • Што е API, WS и зошто се потребни;
  • Улогата на API тестирањето во процесот на обезбедување квалитет;
  • Преглед на WS алатки за тестирање;
  • Методи кои се користат при WS тестирање;
  • Историја на САПУН;
  • Терминологија и главни концепти (XML, XSD, Endpoint, WSDL).

Лекција 2: SOAP протокол. REST архитектура

  • Терминологија и главни концепти (UDDI, XSLT, XPath, XQuery, HTTP методи, HTTP статуси);
  • Структура и главни компоненти на САПУН;
  • Опсег на примена;
  • Карактеристики на работа;
  • Предности и недостатоци;
  • Карактеристики на REST архитектурата;
  • Терминологија и главни концепти (WADL, RESTful, JSON, JSONPath);
  • принципи REST;
  • Статусниот код и главните статуси;
  • CRUD глаголи;
  • Предности и недостатоци.

Лекција 3. Воведување на SoapUI. Работа со проект REST

  • Java инсталација;
  • Инсталирање на SoapUI;
  • Преглед на главните елементи на интерфејсот;
  • Поврзување на едукативен проект;
  • Преглед на методите на проектот;
  • Испраќање барање и анализа на добиениот одговор;
  • Проучување на достапните веб сервиси на проектот;
  • Изготвување план за тестирање;
  • Пишување тест случаи;
  • Елементи „TestSuite“, „TestCase“, „TestSteps“.

Лекција 4. Работа со проект REST (XML)

  • блок „Тврдења“;
  • Водење тестови на различни нивоа;
  • Елемент „Својства“, главни способности;
  • Работа со својства;
  • елемент „Пренос на имот“;
  • Работа со тврдења.

Лекција 5. Работа со проект REST (JSON)

  • Услови и гранки;
  • Работа со тврдења;
  • TestRunner, карактеристики на работа;
  • Стартувајте TS, TC од командната линија;
  • Работа со тест тркач;
  • Работа со скрипти Groovy.

Лекција 6. Работа со скрипти Groovy

  • Работа со статични и динамички податоци;
  • Генерирање податоци од тестот;
  • Добиваме податоци од „Карактеристики“;
  • Снимање и пренос на податоци;
  • Услови и гранки;
  • Скрипта тврдење.

Лекција 7. Дополнителни карактеристики

  • Поврзување на надворешни библиотеки и сопствени класи;
  • Мок услуги;
  • Зошто ни се потребни Mock услуги?
  • Пример за работа со Mock услуга;
  • Што е со CI?
  • Инсталирајте Џенкинс;
  • Започнување на проект за Џенкинс.