Я создал класс Connection с конструктором для подключения к webdriverio. Я передал ему возможности, но кажется, что когда я использую this.client = wdio.remote (opts), кажется, что он неправильно сохраняется в драйвере. Я разместил ошибки ниже, но в основном это говорит мне, что функция не существует, но это функция wdio. Я не сохраняю это правильно в переменную или есть другой способ использовать эту функцию?
Connection.js
class Connection {
constructor() {
const wdio = require("webdriverio");
const assert = require("assert");
const opts = {
port: 4723,
capabilities: {
platformName: "Android",
platformVersion: '8.1',
deviceName: "emulator-5554",
app: "C:\\Users\\user1\\Downloads\\demo1.apk",
automationName: "UiAutomator2"
}
};
const fs = require('fs');
this.client = wdio.remote(opts);
let driver = this.client
let source = driver.getPageSource()
fs.writeFile("test.txt", source, function(err) {
if(err) {
return console.log(err);
}
console.log("The file was saved!");
});
let count = 1
let flag = true
}
screenshots() {
this.client.takeScreenshot()
this.client.saveScreenshot("./public/images/myscreenshot2.png")
}
}
exports.Connection = new Connection()
error
let source = driver.getPageSource()
^
TypeError: driver.getPageSource is not a function
at new Connection (C:\Users\user1\Desktop\wrap_test\public\scripts\Connection.js:22:21)
at Object.<anonymous> (C:\Users\user1\Desktop\wrap_test\public\scripts\Connection.js:46:22)
at Module._compile (internal/modules/cjs/loader.js:1158:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1178:10)
at Module.load (internal/modules/cjs/loader.js:1002:32)
at Function.Module._load (internal/modules/cjs/loader.js:901:14)
at Module.require (internal/modules/cjs/loader.js:1044:19)
at require (internal/modules/cjs/helpers.js:77:18)
at Object.<anonymous> (C:\Users\user1\Desktop\wrap_test\app.js:9:17)
at Module._compile (internal/modules/cjs/loader.js:1158:30)