Вы можете начать с
- Загрузка Chromedriver и поместить это в PATH
- Клон в этом репо и
cd MochaTypescriptTest-101/
npm install
mocha test\SeleniumDemo.test.js
Это не совсем то, что вы ищете, но оно содержит тесты, которые помогут вам начать работу с селеном и машинописью. Просто посмотрите на их конфигурацию и вам будет хорошо go. Для более подробной информации, вы можете посмотреть эту ссылку , которая содержит следующие тесты
before – initializes chrome driver
before(function () {
// initializing chrome driver
driver = new webdriver.Builder()
.withCapabilities(webdriver.Capabilities.chrome())
.build();
// maximizing chrome browser
driver.manage().window().maximize();
});
afterEach – takes screenshot if test case fails, collects logs etc
afterEach(function () {
let testCaseName: string = this.currentTest.title;
let testCaseStatus: string = this.currentTest.state;
if (testCaseStatus === 'failed') {
console.log(`Test: ${testCaseName}, Status: Failed!`);
// capturing screenshot if test fails
driver.takeScreenshot().then((data) => {
let screenshotPath = `TestResults/Screenshots/${testCaseName}.png`;
console.log(`Saving Screenshot as: ${screenshotPath}`);
fs.writeFileSync(screenshotPath, data, 'base64');
});
} else if (testCaseStatus === 'passed') {
console.log(`Test: ${testCaseName}, Status: Passed!`);
} else {
console.log(`Test: ${testCaseName}, Status: Unknown!`);
}
});
after – closes browser
after(function () {
driver.quit();
});
it – performs test operation and validates result. e.g. open bing.com and search for a text
it('should search for nilay shah at bing.com', function () {
let Url: string = `http://www.bing.com`;
return driver.get(Url).then(function () {
console.log(`Page "${Url}" opened`);
}).then(() => {
return driver.getCurrentUrl().then((currentUrl) => {
currentUrl.should.include(
`www.bing.com`,
`Expected url: www.bing.com, Actual url: ${currentUrl}`);
}).then(() => {
let searchBox = driver.findElement(webdriver.By.name('q'));
searchBox.sendKeys('nilay shah');
return searchBox.getAttribute('value').then((value) => {
value.should.equal('nilay shah');
});
});
});
});