Size: a a a

2020 February 06

Sb

Sergii bapo in JS for testing
Kvv Vvk
Есть кто пишет на Cypress? Как Вам?
мне тоже нравится, но я по правде говоря в js не силён, поэтому у меня чтоб запустить, написать, чтоб заработало ушло много времени и чтения базовых вещей. занимаюсь в свободное время, тестирую ручками. отсюда - сталкиваюсь с кучкой проблем, которые пока не могу решить
источник

АА

Андрей Алексеевич in JS for testing
Oleksii Ihnatiuk
веб мобайл тот же веб
Надо на андроид устройствах тестить. Апиум или детокс цеплять.
источник

OI

Oleksii Ihnatiuk in JS for testing
ясно, мне достаточно эмулятор в хроме
источник

АА

Андрей Алексеевич in JS for testing
Oleksandr Khotemskyi
там wdio+appium или detox для мобильников на выбор
👍 Может есть проект для образца? Хотя наверно в документации есть )
источник

KV

Kvv Vvk in JS for testing
Sergii bapo
мне тоже нравится, но я по правде говоря в js не силён, поэтому у меня чтоб запустить, написать, чтоб заработало ушло много времени и чтения базовых вещей. занимаюсь в свободное время, тестирую ручками. отсюда - сталкиваюсь с кучкой проблем, которые пока не могу решить
А с какими к примеру проблемами?
источник

OK

Oleksandr Khotemskyi in JS for testing
Андрей Алексеевич
👍 Может есть проект для образца? Хотя наверно в документации есть )
да, дока прекрасная, начни с нее
источник

АА

Андрей Алексеевич in JS for testing
Насчет доки согласен. Уже убедился )
источник

Sb

Sergii bapo in JS for testing
Kvv Vvk
А с какими к примеру проблемами?
у меня не завелась загрузка файлов, хотя модуль есть
невозможна работа с всплывающими окнами (платежек, типа пейпала), и из-за этого весь блок оплат тестируется вручную

еще на деве не получается бейсик авторизацию завести при переходе с обычного на secure. домен, т.к. шаг с переходом на secure страницу в before не учитывается, а как отловить в xhr 301 редирект и подставить туда данные бейсика я хз.

ну и из организационного, я не смог сделать загрузку html отчета в слак, без разбирательств в CI - оно почему-то видит только json отчета
и распаралелить
источник

OV

Oleg Voropaev in JS for testing
Привет. Вопроc: как в jasmine зафейлить тест в  определенный момент и остановить его дальнейшее выполнение?
Пробую делать jasmine.fail('error description'), но у  меня выполняется еще несколько действий после вызова fail().
Код:
 it('First', async () => {
   const mail = await MailReader.getLatestAuthorityReferralEmail();
   if (mail === null) {
     fail('Mail was not recieved in 2 mins');
   }
   expect(mail.subject).toBe('qweqweqwe', 'fail 1/1');
   expect(mail.html).toContain('asdasdsds', 'fail 1/2');
 });
источник

OV

Oleg Voropaev in JS for testing
Так вот 2 expect, которые идут после If тоже выполняются, а задача не  выполнять их, так как обьект mail == null и нет смысла проверять его атрибуты
источник

OK

Oleksandr Khotemskyi in JS for testing
Oleg Voropaev
Привет. Вопроc: как в jasmine зафейлить тест в  определенный момент и остановить его дальнейшее выполнение?
Пробую делать jasmine.fail('error description'), но у  меня выполняется еще несколько действий после вызова fail().
Код:
 it('First', async () => {
   const mail = await MailReader.getLatestAuthorityReferralEmail();
   if (mail === null) {
     fail('Mail was not recieved in 2 mins');
   }
   expect(mail.subject).toBe('qweqweqwe', 'fail 1/1');
   expect(mail.html).toContain('asdasdsds', 'fail 1/2');
 });
throw new Error(‘stop!’)
источник

OK

Oleksandr Khotemskyi in JS for testing
if (mail === null) {
     throw new Error('Mail was not recieved in 2 mins');
   }
источник

BO

Boris Osipov in JS for testing
Oleksandr Khotemskyi
throw new Error(‘stop!’)
эм а че fail() error не бросает?
источник

BO

Boris Osipov in JS for testing
или это так круто работает жасминовский софт ассерт?
источник

OK

Oleksandr Khotemskyi in JS for testing
Boris Osipov
эм а че fail() error не бросает?
он помоему его трекает как assertion error, а jasmine по умолчанию не стопается на них
источник

OV

Oleg Voropaev in JS for testing
/**
* Explicitly mark a spec as failed.
* @param e Reason for the failure
*/
источник

OV

Oleg Voropaev in JS for testing
Это из  документации, но  чет не  работает
источник

OV

Oleg Voropaev in JS for testing
Oleksandr Khotemskyi
if (mail === null) {
     throw new Error('Mail was not recieved in 2 mins');
   }
Так  что походу это  единственный рабочий  вариант, спасибо
источник

OK

Oleksandr Khotemskyi in JS for testing
Oleg Voropaev
Это из  документации, но  чет не  работает
ну если ты обратишь внимание expect() тоже не останавливает тест
источник

OK

Oleksandr Khotemskyi in JS for testing
там помоему есть опция выключить и падать немедленно, но она работает забористо, в доке хрен найдешь и еще по разному для 2.x и 3.x жасмина
источник