Имплементација агентске вештачке интелигенције у детерминистичкој аутоматизацији теста са ЛангЦхаин-ом и ДСПи
Увод
Све већа сложеност софтверских система учинила је аутоматизацију тестирања кључним аспектом развоја софтвера. Традиционални оквири за аутоматизацију тестирања ослањају се на скриптне приступе, који могу бити крхки и тешки за одржавање. Последњих година, појава агентске вештачке интелигенције и алата за оркестрацију отворила је нове могућности за аутоматизацију сложених сценарија тестирања. У овом чланку ћемо истражити укрштање агентске вештачке интелигенције, алата за оркестрацију и софтверског инжењерства да бисмо аутоматизовали сложене тестне сценарије користећи ЛангЦхаин и ДСПи.
Шта је Агентиц АИ?
Агентска АИ се односи на врсту вештачке интелигенције која је дизајнирана да предузима радње у име корисника или система. Агентски АИ системи су способни да доносе одлуке, уче из искуства и прилагођавају се новим ситуацијама. У контексту аутоматизације тестирања, Агентиц АИ се може користити за аутоматизацију сложених сценарија тестирања симулацијом интеракција корисника, доношењем одлука на основу података теста и прилагођавањем променљивим условима тестирања.
Шта је ЛангЦхаин?
ЛангЦхаин је оркестрациони алат отвореног кода који омогућава програмерима да граде сложене АИ системе користећи различите програмске језике, укључујући Питхон, Руст и Го. ЛангЦхаин обезбеђује флексибилну и модуларну архитектуру која омогућава програмерима да интегришу различите компоненте вештачке интелигенције, као што су обрада природног језика (НЛП) и компјутерски вид, како би изградили софистициране АИ системе.
Шта је ДСПи?
ДСПи је Питхон библиотека која пружа скуп алата за изградњу и примену АИ система. ДСПи је дизајниран да ради беспрекорно са ЛангЦхаин-ом и пружа низ функција, укључујући обраду података, машинско учење и дубоко учење.
Имплементација агентске АИ у детерминистичкој аутоматизацији тестова
Да бисмо имплементирали Агентиц АИ у детерминистичку аутоматизацију тестирања, можемо да користимо ЛангЦхаин и ДСПи да бисмо изградили оквир за аутоматизацију тестирања који симулира интеракције корисника, доноси одлуке на основу података теста и прилагођава се променљивим условима тестирања.
Ево једноставног примера како можемо да користимо ЛангЦхаин и ДСПи да аутоматизујемо тест сценарио:
импорт лангцхаин
фром лангцхаин.цхаинс импорт ЛЛМЦхаин
из лангцхаин.ллмс импорт ДСПиЛЛМ
тест_сценарио = {
"усер_инпут": "пријава",
"екпецтед_оутпут": "пријава је успела"
}
# Дефинишите агента АИ агента
агент = ЛЛМЦхаин(
ллм=ДСПиЛЛМ(),
инпут_типе="текст",
оутпут_типе="текст"
)
# Дефинишите функцију аутоматизације тестирања
деф тест_аутоматион(тест_сценарио):
# Симулирајте интеракцију корисника
усер_инпут = тест_сценарио["усер_инпут"]
# Донесите одлуку на основу података теста
одлука = агент.рун(усер_инпут)
# Прилагодите се променљивим условима тестирања
ако је одлука == "пријава успешна":
принт("Тест је прошао")
остало:
принт("Тест није успео")
# Покрените функцију аутоматизације тестирања
тест_аутоматион(тест_сценарио)
У овом примеру дефинишемо тест сценарио који укључује симулацију интеракције корисника, доношење одлуке на основу података теста и прилагођавање променљивим условима тестирања. Затим дефинишемо агента АИ агента користећи ЛангЦхаин и ДСПи и користимо га за аутоматизацију сценарија тестирања.
Топ 5-10 најчешће коришћених команди/исјечака
Ево 5-10 најчешће коришћених команди/исјечака за ЛангЦхаин и ДСПи:
лангцхаин.ЛЛМЦхаин(ллм=ДСПиЛЛМ()): Креира агента АИ користећи ЛангЦхаин и ДСПи.ДСПиЛЛМ(): Иницијализује ДСПи ЛЛМ (модел великог језика) инстанцу.ЛЛМЦхаин(инпут_типе="тект", оутпут_типе="тект"): Креира агента АИ агента са типовима уноса и излаза текста.агент.рун(усер_инпут): Покреће Агентиц АИ агент са корисничким уносом.тест_сценарио = {"усер_инпут": "логин", "екпецтед_оутпут": "пријава успешна"}: Дефинише тест сценарио са корисничким уносом и очекиваним излазом.лангцхаин.цхаинс.ЛЛМЦхаин(ллм=ДСПиЛЛМ()): Креира агента АИ користећи ЛангЦхаин и ДСПи.ДСПиЛЛМ().предицт(усер_инпут): Предвиђа излаз ДСПи ЛЛМ-а са корисничким уносом.ЛЛМЦхаин(инпут_типе="тект", оутпут_типе="тект").рун(усер_инпут): Покреће агента АИ са типовима уноса и излаза текста.тест_аутоматион(тест_сценарио): Покреће функцију аутоматизације теста са тестним сценаријем.лангцхаин.цхаинс.ЛЛМЦхаин(ллм=ДСПиЛЛМ()).рун(усер_инпут): Покреће Агентиц АИ агент са корисничким уносом.
Визуелизација
Ево визуелизације агента Агентиц АИ користећи Цхарт.јс:
{
"тип": "бар",
"подаци": {
"ознаке": ["Унос корисника", "Одлука", "Прилагодба"],
"сетови података": [
{
"лабел": "Агент АИ Агент",
"подаци": [10, 20, 30],
"бацкгроундЦолор": "ргба(255, 99, 132, 0.2)",
"бордерЦолор": "ргба(255, 99, 132, 1)",
"бордерВидтх": 1
}
]
},
"опције": {
"наслов": {
"приказ": истина,
"тект": "Агент АИ Агент"
},
"вага": {
"иАкес": [
{
"крпељи": {
"бегинАтЗеро": истина
}
}
]
}
}
}
Ова визуелизација показује перформансе агента Агентиц АИ у симулацији интеракција корисника, доношењу одлука на основу података теста и прилагођавању променљивим условима тестирања.
Закључак
У овом чланку смо истражили укрштање агентске вештачке интелигенције, алата за оркестрацију и софтверског инжењеринга да бисмо аутоматизовали сложене тестне сценарије користећи ЛангЦхаин и ДСПи. Имплементирали смо једноставан пример Агентиц АИ у детерминистичкој аутоматизацији тестова и обезбедили низ команди/исјечака за ЛангЦхаин и ДСПи. Такође смо визуелизовали перформансе агента Агентиц АИ користећи Цхарт.јс. Користећи Агентиц АИ и Орцхестратион Тоолс, програмери могу да изграде софистициране оквире за аутоматизацију тестирања који симулирају интеракције корисника, доносе одлуке на основу података теста и прилагођавају се променљивим условима тестирања.