Size: a a a

2020 July 08

AP

Alexander Popov in JS for testing
Oleksandr Pelykh
это не способ получить имя, но спасибо )
получить имя в том смысле что ты имеешь ввиду - не законно, как ты сам видел)
источник

S

Sergei in JS for testing
Oleksandr Pelykh
подскажите простой законный способ получить имя функции внутри её самой в typescript
можно использовать V8 APi:

"strict mode";

// get name of function where it is called
const getCallerName = () => {
   const _ = Error.prepareStackTrace;
   Error.prepareStackTrace = (_, stack) => stack;
   const stack = new Error().stack.slice(1);
   Error.prepareStackTrace = _;
   return stack[0].getFunctionName();
};

// examples
let funcVar = function myFunc () {
   console.log(getCallerName());
};

funcVar(); // "myFunc"

funcVar = function () {
   console.log(getCallerName());
};

funcVar(); // "funcVar"

funcVar = () => {
   console.log(getCallerName());
};

funcVar(); // "funcVar"

(() => {
   console.log(getCallerName());
})(); // null
источник

AP

Alexander Popov in JS for testing
lol
источник

A

Andrey in JS for testing
Oleksandr Khotemskyi
через addAttachment можно

addAttachment(name, content, [type]) – save attachment to test.
name (String) - attachment name.
content – attachment content.
type (String, optional) – attachment MIME-type, text/plain by default
так это вроде как будут скрины называться в рипорте а как им задать имя при сохранении?
источник

S

Sergei in JS for testing
Andrei Dzeichyk
    function myFun() {
       console.log(myFun.name)
   }
тогда уж проще 🙂

function myFun() {
       console.log("myFun")
   }

   const myFun = () => {
       console.log("myFun")
   }
источник

M

MrLansky in JS for testing
Andrey
так это вроде как будут скрины называться в рипорте а как им задать имя при сохранении?
источник

A

Andrey in JS for testing
не создает скрины с теми параметрами которые я передаю в функцию,
делаю все как в доке
if (error !== undefined) {
           browser.takeScreenshot(process.cwd()+'/allure-results/screen1.png');
           browser.touchScroll(0, 1200);
           browser.takeScreenshot(process.cwd()+'/allure-results/screen2.png');
       }
источник

BO

Boris Osipov in JS for testing
Andrey
не создает скрины с теми параметрами которые я передаю в функцию,
делаю все как в доке
if (error !== undefined) {
           browser.takeScreenshot(process.cwd()+'/allure-results/screen1.png');
           browser.touchScroll(0, 1200);
           browser.takeScreenshot(process.cwd()+'/allure-results/screen2.png');
       }
еще раз увижу фразу "не работает у меня" забаню на неделю
источник

BO

Boris Osipov in JS for testing
как мы должны догадаться что происходит в этом случае? можно нормально описать ожидания и то что происходит? :)
источник

A

Andrey in JS for testing
Boris Osipov
как мы должны догадаться что происходит в этом случае? можно нормально описать ожидания и то что происходит? :)
изменил сообщение) благодарю за бдительность
источник

M

MrLansky in JS for testing
Andrey
не создает скрины с теми параметрами которые я передаю в функцию,
делаю все как в доке
if (error !== undefined) {
           browser.takeScreenshot(process.cwd()+'/allure-results/screen1.png');
           browser.touchScroll(0, 1200);
           browser.takeScreenshot(process.cwd()+'/allure-results/screen2.png');
       }
метод takeScreenshot не принемает аргументов, а в доке что я скинул метод saveScreenshot и вот там уже должно сработать
источник

A

Andrey in JS for testing
MrLansky
метод takeScreenshot не принемает аргументов, а в доке что я скинул метод saveScreenshot и вот там уже должно сработать
ого - я туплю, сорри!
источник

A

Andrey in JS for testing
может кто знает почему wdio6  не добавляет скрины в Allure рипорт?
путь правильный, сам скрин лежит по этому пути
const { attachments } = require('@wdio/allure-reporter').default
...
           browser.saveScreenshot(process.cwd() + '/allure-results/screen1.png');
attachments.addAttachment("Screen1",
               Buffer.from(process.cwd() + '/allure-results/screen1.png',
                   "base64"),
               "image/png");
источник

S

Sergei in JS for testing
наверное потому что Buffer.from должен принимать контент а не путь
источник

a

anton in JS for testing
всем привет, кто то знает есть ли хук в selenium webdriver, который ссрабатывает когда закончатся все реквесты? просто мне нужно отследить жэтот момент, т.к. реквесты очень долгие и секунд по 10 сидят в pending`е. А постоянно кидать в driver.sleep(15000) это ужас. Ну или может кто знает решение получше?
источник

B

Bola in JS for testing
1. Ждать нужный элемент
2. Использовать не вебдрайвер
источник

a

anton in JS for testing
елемент не меняется
источник

a

anton in JS for testing
и новых елементов нет тоже
источник

B

Bola in JS for testing
Даже не перерисовывается? А как пользователь узнает, что можно дальше работать?
источник

a

anton in JS for testing
меняется текст внутри елемента
источник