下面是一个Angular 9应用的代码示例,演示了如何使用Cypress和Selenium(BrowserStack)进行自动化测试:
npm install cypress --save-dev
然后,创建一个Cypress测试文件,例如cypress/integration/app.spec.js
,并添加以下代码:
describe('App', () => {
it('should display welcome message', () => {
cy.visit('/');
cy.contains('Welcome to my app!');
});
});
最后,在控制台中运行以下命令以启动Cypress测试:
npx cypress open
Cypress将自动打开一个图形用户界面,您可以选择要运行的测试文件并查看测试结果。
npm install selenium-webdriver browserstack-webdriver --save-dev
然后,创建一个Selenium测试文件,例如test/selenium/app.spec.js
,并添加以下代码:
const webdriver = require('selenium-webdriver');
const { Builder, By } = webdriver;
describe('App', () => {
let driver;
before(async () => {
driver = await new Builder()
.usingServer('http://hub-cloud.browserstack.com/wd/hub')
.withCapabilities({
browserName: 'Chrome',
browser_version: '80.0',
os: 'Windows',
os_version: '10',
project: 'My App',
build: 'Build 1.0',
name: 'App Test'
})
.build();
});
after(async () => {
await driver.quit();
});
it('should display welcome message', async () => {
await driver.get('http://localhost:4200');
const welcomeMessage = await driver.findElement(By.xpath('//h1')).getText();
assert.equal(welcomeMessage, 'Welcome to my app!');
});
});
请确保在withCapabilities
方法中使用正确的BrowserStack配置。
最后,在控制台中运行以下命令以启动Selenium测试:
npx mocha test/selenium/app.spec.js
Selenium将启动一个浏览器并运行测试,您可以在控制台中查看测试结果。
无论您选择使用Cypress还是Selenium(BrowserStack),都可以使用类似的方法来编写和运行自动化测试。根据您的需求和偏好,在这两个工具之间进行选择。