«Чат-бот ChatGPT привлек внимание QA-комьюнити. Рассмотрим, способна ли эта платформа упростить задачи тестировщиков; в первую очередь интересует автоматизация веб-тестирования и интерфейса.
OpenAI заявляет, что ChatGPT умеет писать код на разных языках программирования. Реализуем на JS (самом популярном ЯП в QA) самые частые юз-кейсы тестирования UI и API.
Забегая наперед: можно утверждать, что ChatGPT действительно умеет генерировать вполне рабочий код; хотя иногда этот код не идеален, нужны правки (небольшие).
Итак, рассмотрим, как настроить ChatGPT, как генерировать в нем JavaScript-код для Cypress, и оценим работоспособность кода.
Возможности ChatGPT
Продвинутый чат-бот с функциями искусственного интеллекта, обученный на огромном массиве данных. Модель изначально создавалась для чат-ботов и подобных диалоговых систем. Как и другие модели нейронной генерации текста, эта модель обучена на огромном массиве «нативных» текстов (то есть написанных людьми), поэтому выдает ответы, адаптированные под человеческое восприятие.
ПРОХОЖУ ТЕСТЫ по литературе и ПОЗОРЮСЬ ЭТО ЖЕ КЛАССИКА!
Работает ли в России
Да, но есть нюансы. О них здесь или здесь; список бесплатных VPN; + способы регистраии здесь.
Cypress
JS-фреймворк автоматизации тестирования веб-приложений. В нем удобно писать и выполнять автотесты; есть функции командной строки (CLI), перезагрузки страниц в реальном времени, и параллельного запуска тестов. Подходит для тестирования современных приложений со сложными пользовательскими взаимодействиями и асинхронными операциями.
Позволяет писать тесты, имитирующие то как пользователь работает с приложением, и дает детальный репорт по результатам тестов. Применяется в связке с другими современными инструментами QA, платформами непрерывной интеграции, а также другими тестовыми фреймворками, в рамках общей стратегии тестирования. Используется как тестировщиками, так и разработчиками.
Регистрация в ChatGPT
- Ищем ChatGPT в Гугле.
- Нашли, открываем официальный сайт https://openai.com/blog/chatgpt/
- Нажимаем “Try CHATGPT” (фиолетовая стрелка). Далее видим опции входа и регистрации:
4. Регистрируемся (Signup, удобнее через имеющийся аккаунт в Gmail):
5. Система предложит ввести номер мобильного и принять на смартфон код для завершения регистрации в ChatGPT. После этого появится приветствие с объяснениями и ограничениями ChatGPT, и внизу окно чата, где и будем вводить свои вопросы. Теперь можем приступать.
Как тестировать чат-бот | Chatbot testing
Пишем тесты в ChatGPT
Итак, пробуем, на что способен ChatGPT по тестам интерфейса и API. Будем задавать вопросы (на английском), которые искусственный интеллект преобразует в код.
Тестирование UI в ChatGPT
Вопрос 1.
“Напиши JavaScript-код для Cypress: открыть URL-адрес http://qaautomationlabs.com/
(На английском: “Write Cypress/ Javascript code for opening the URL of the site http://qaautomationlabs.com“)
Система понимает такой запрос, обрабатывает его, и выдает ответ — пишет для нас готовый код:
Этот код выглядит нормально и запускается без проблем:
describe(‘My test’, () => < it(‘Visits the website’, () =>< cy.visit(‘http://qaautomationlabs.com’); >); >);
Вопрос 2.
Предыдущее задание, плюс напечатать в консоли название страницы.
( На английском: “Write Cypress Javascript code for opening the URL of the site http://qaautomationlabs.com and print the title” ) :
Этот код тоже выполнился без проблем, и в консоли видим название-тайтл страницы:
describe(«My Test Suite», function () < it(«My Test Case», function () < cy.visit(«http://qaautomationlabs.com/»); // open the URL cy.title().then(function (title) < console.log(title); // print the title >); >); >);
Вопрос 3.
«Напиши Cypress JS код для открытия адреса http://qaautomationlabs.com/ и кликнуть по ссылке Блоги»
(На английском: “Write Cypress/ Javascript code for opening the URL of the site http://qaautomationlabs.com/ and Click on the Link “Blogs” )
Однако, на этот раз код оказался чуть некорректным:
Пришлось исправить код вручную, добавив :
describe(«Navigate to QAAutomationLabs website and click on Blogs link», () => < it(«Visits the website and clicks on the Blogs link», () =>< cy.visit(«http://qaautomationlabs.com»); cy.get(‘a’).contains(‘Blogs’).click(< force: true >); >); >);
И тогда код выполнился, страница открылась:
Вопрос 4.
Сценарий входа (login).
Вопрос сформулируем так:
«Напиши JavaScript код для Cypress, открыть URL-адрес https://www.saucedemo.com и залогиниться с юзернеймом standard_user и паролем secret_sauce и нажать кнопку Login“
(На английском: “ Write Cypress/ Javascript code to Open the URL https://www.saucedemo.com/ login with Username standard_user Password secret_sauce and click on the login button “).
ChatGPT выдает ответ:
const username = «standard_user»; const password = «secret_sauce»; describe(«Login to Saucedemo», () => < it(«should log in with valid credentials», () =>< cy.visit(«https://www.saucedemo.com/»); cy.get(«#user-name»).type(username); cy.get(«#password»).type(password); cy.get(«#login-button»).click(); >); >);
Тестирование API в ChatGPT
ChatGPT умеет генерировать такие тесты.
Вопрос 1.
“Напиши код API на Javascript Cypress для GET-запроса по ссылке https://reqres.in/api/users?page=2 и проверь статус-код 200”
(На английском: “Generate Cypress API code for GET request for link https://reqres.in/api/users?page=2 and verify status code 200“)
Код оказался 100% рабочий, получен ответ 200.
describe(«Send GET request and verify status code», () => < it(«should send a GET request and verify the status code», () => < cy.request(«GET», «https://reqres.in/api/users?page=2»).then((response) =>< expect(response.status).to.eq(200); >); >); >);
Вопрос 2.
“Напиши код Cypress API POST-запроса по ссылке https://reqres.in/api/users?page=2 с параметрами name”: “morpheus”, job”: “leader” в теле запроса, и проверь статус-код 201“
( “Generate Cypress API code for POST request for link https://reqres.in/api/users?page=2 by passing name”: “morpheus”, job”: “leader” in the body and verify status code 201“ )
Код нормальный, есть ответ 201.
const data = < name: ‘morpheus’, job: ‘leader’, >; describe(‘Send POST request and verify status code’, () => < it(‘should send a POST request and verify the status code’, () => < cy.request(‘POST’, ‘https://reqres.in/api/users?page=2’, data).then((response) =>< expect(response.status).to.eq(201); >); >); >);
Вопрос 3.
“Напиши код API Cypress DELETE-запроса по ссылке https://reqres.in/api/users?page=2, и проверить статус 204.“
( “Generate Cypress API code for DELETE request for Url https://reqres.in/api/users?page=2 and verify status code 204“)
С кодом все ок, ответ 204.
describe(«Send DELETE request and verify status code», () => < it(«should send a DELETE request and verify the status code», () =>< cy.request(< method: «DELETE», url: «https://reqres.in/api/users?page=2», >).then((response) => < expect(response.status).to.eq(204); >); >); >);
Генерация .feature-файла Cucumber в ChatGPT
ChatGPT умеет такое.
Вопрос 1.
“Напиши мне feature-файл Cucumber, открывающий URL https://qaautomationlabs.com, далее нажать кнопку “Read more” и проверить наличие на странице текста “Running End-to-End Cypress Test cases In Google Cloud Build Pipeline”:
(“Generate the Cucumber feature file to Open the URL https://qaautomationlabs.com and click on the “Read more” button and verify the text Running End-to-End Cypress Test cases In Google Cloud Build Pipeline”):
Feature: Navigate to qaautomationlabs.com, click a button, and verify text As a user I want to visit qaautomationlabs.com, click a button on the page, and verify that certain text is displayed So that I can see the content that the button reveals and confirm that the expected text is present Scenario: Click the button and verify text Given I am on the qaautomationlabs.com homepage When I click the «Read more» button Then I should see the content that the button reveals And I should see the text «Running End-to-End Cypress Test cases In Google Cloud Build Pipeline»
Вопрос 2.
“Напиши feature-файл Cucumber: открыть URL https://www.saucedemo.com, логин с юзернеймом standard_user и паролем secret_sauce, нажать кнопку LOGIN.”
(Generate the Cucumber feature file to Open the url https://www.saucedemo.com/ login with Username standard_user Password secret_sauce and click on LOGIN button):
Feature: Navigate to qaautomationlabs.com and click a button As a user I want to visit qaautomationlabs.com and click a button on the page So that I can see the content that the button reveals Scenario: Click the button Given I am on the qaautomationlabs.com homepage When I click the «Read more» button Then I should see the content that the button reveals
Вопрос 3.
“Напиши таблицу данных Cucumber для сайта https://www.saucedemo.com”
(«Generate cucumber Data table for https://www.saucedemo.com/ «):
Feature: Login feature As a user, I want to be able to log in to the website so that I can access my account. Scenario Outline: Successful login Given I am on the login page When I enter my email address «» and password «» And I click the login button Then I should be logged in Examples: | email | password | | standard_user | secret_sauce | | locked_out_user | secret_sauce | | problem_user | secret_sauce | | performance_glitch_user | secret_sauce |
И с этой задачей ChatGPT тоже справился.
Что имеем
ChatGPT хорошо работает для простых рутинных задач тестировщика. Уже понятно, что платформа может стать стандартом low-code-тестирования во многих областях QA. Хотя иногда и случаются небольшие ошибки, которые нужно исправлять вручную.
В целом, код написанный ChatGPT очень близок к написанному человеком, и вполне рабочий.»
Ну, и в завершение спросим у бота:
— Может ли ChatGPT заменить тестировщиков?
Ответ:
«- Нет, ChatGPT не сможет заменить тестировщиков. Хотя искусственный интеллект уже умеет отвечать на вопросы и генерировать тексты, ему не хватает умений тестировать ПО и находить баги систематически и внимательно. Люди-тестировщики играют критически важную роль в обеспечении качества ПО, используя свою креативность, опыт, и интуицию для поиска багов, которые ИИ найти не способен.»
Источник: testengineer.ru
Как учителю использовать ботов в Telegram?
Telegram — один из мессенджеров, который широко распространен в России. Он отличается от других стикерами, которые можно сделать самому, возможностью записывать круглые видео и создавать ботов. Вы, наверное, сталкивались хотя бы раз с автоматизированным чатом в мессенджере, который был настроен на быстрые ответы о продукции конкретного магазина. Боты – отличный помощник не только в сфере продаж, но и в преподавании. В этой статье разберем, какие бывают виды ботов в Telegram и как использовать ботов в работе преподавателя.
Что такое бот в Telegram и как его создать?
Бот — автоматизированный помощник, который быстро взаимодействует с запросом человека. Например, отвечает на часто задаваемые вопросы, ищет информацию или рассылает сообщения.
Нажимаем /start и далее выполняем все по инструкции, которую получите в чате, в зависимости от вашего выбора. Придумываем имя, логин и если они не заняты, то вы получите уникальный токен для работы с ботом. Сохраните его в надежном месте, чтобы в дальнейшем синхронизировать с сайтом для бесплатной настройки ботов, например, Sendpulse.
Здесь можно прочитать более подробную инструкцию по настройке. Информация также есть на сайте-помощнике по работе с ботами.
Какие бывают боты?
На самом деле, нет четкого разделения. Их можно различать по типу сложности алгоритма, по формату взаимодействия с собеседником, по функциям и т.д.
Чтобы показать, как боты могут помочь в сфере образования, разделим их в зависимости от целей, которые они могут осуществить помогая учителю.
— Чат-бот – самый простой. Запрограммирован отвечать на вопросы и имитировать общение;
— Игровой бот создается для развлечения и вовлечения в тему;
— Бот-информатор помогает рассылать важную информацию и оповещать сразу всех, кто на него подписан.
Преимущество таких ботов для учителей в том, что:
— они помогают снять с себя и автоматизировать многие задачи, на которые вы обычно тратите время и энергию;
— вовлекают учеников, так как это современный способ коммуникации и многие предпочитают писать, а не звонить.
Как использовать преподавателю бота в профессиональных целях?
Чат-бот
Первое, с чем сталкивается преподаватель каждый день – отвечает на вопросы и чаще всего одни и те же. Именно для часто задаваемых вопросов можно создать чат-бота. Составьте список вопросов, например:
— Какие материалы нужны для подготовки к ОГЭ?
— Где скачать таблицу неправильных глаголов?
— Как выполнять домашнее задание на платформе?
Для всех вопросов можно прописать сценарий, который будет по запросу отправлять ответ и необходимые материалы или ссылки. Со временем список можно дополнять в зависимости от частотности вопросов. Пользоваться могут как родители, так и ученики.
Яркий пример чат-бота — Yandex.Translate. Выполняет только одну функцию – мгновенно дать перевод слова или фразы.
Бот-информатор
Преподавателям, которые работают в школе или просто с группами, нужно успевать оповещать всех о важных моментах. Бывает, чтобы в классе присутствуют не все ученики, а оповестить об изменении в расписании, предстоящем мероприятии или еще о чем-то надо. Создайте бота-информатора, который будет в определенное время и день рассылать сообщения.
Допустим, вы планируете на следующее занятие провести контрольную работу и необходимо, чтобы все знали об этом и могли подготовиться. Или, например, вы хотите оповестить о домашнем задании на каникулы – заранее составьте сообщение, которое придет в чате, и выберите определенное время отправки. Распишите домашнее задание на неделю и прикрепите ссылки или материалы, которые необходимо скачать.
Как правило, когда составляется учебный план, вы заранее знаете, когда планируется контрольная и каникулы. Такие боты можно программировать на месяц или несколько вперед.
Игровой-бот
Боты такого формата отлично подойдут для отработки слов, грамматики и аудирования. В таких форматах работа с ботом заключается в выборе одной кнопки из нескольких. Благодаря этому создается впечатление, как будто вы не учите английский, а играете в игру, где есть только несколько вариантов исхода. Таких ботов используют обычно в качестве домашнего задания или дополнительной практики. Можно создать своего или использовать готовых, которые уже помогли многим улучшить английский. Вот несколько из них:
Помогает выучить слова. Вначале просит выбрать уровень языка и в зависимости от этого подбирает вокабуляр. Каждый день присылает определение слова на английском и аудио с произношением. Если по определению все-таки не удалось понять значение слова, то можно нажать explain и в чате отправится пример использования в предложении. Ограничений по количеству слов в день нет.
Все дороги открыты для интересного запоминания лексики.
Помогает отработать грамматику на 30 тем. Достаточно просто запустить бота и выбрать категорию «Грамматика». Затем откроется меню с темами, выбираем понравившуюся и выполняем задания, которые предлагает бот. Больше подойдет для уровней выше Pre-Intermediate, так как для начинающих там мало заданий. Бот предлагает также отработку лексики и разговорной речи на определенные темы, тесты на проверку знаний и изучение книг.
Бот, который разработан, чтобы улучшить понимание на слух. Тут собрано 253 аудио на различные темы и к каждому идет задание на проверку. Выбираем категорию и бот сам предложит запись для прослушивания. Отличный вариант для подготовки к экзаменам или ВПР.
Боты – современная возможность коммуницировать с учениками. Конечно, они не заменят живого общения, но могут упорядочить многие моменты без сильных временных затрат. Это не чаты, где важная информация теряется среди различных сообщений и легче просто закрыть чат, а не искать, то за чем пришел. Здесь можно отправлять только важное, что действительно нужно знать ученикам, или найти ответы на интересующие вопросы в любое время суток. Создавайте и настраивайте различных ботов и это значительно упростит работу вам и ученикам, так как они четко будут знать, что боты срочно помогут даже если вы будете заняты.
Источник: skyteach.ru