Repository navigation
Expand file tree
/
Copy pathexample.spec.js
More file actions
46 lines (35 loc) · 1.51 KB
/
Copy pathexample.spec.js
File metadata and controls
46 lines (35 loc) · 1.51 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
// @ts-check
// tests/login.spec.js
const { test, expect } = require('@playwright/test');
/*
Feature: Login The Internet Herokuapp
Scenario: Username benar dan password benar
Given user membuka halaman login
When user mengisi username "tomsmith"
And user mengisi password "SuperSecretPassword!"
And user klik tombol Login
Then user berhasil masuk ke halaman Secure Area
Scenario: Username benar dan password salah
Given user membuka halaman login
When user mengisi username "tomsmith"
And user mengisi password "password_salah"
And user klik tombol Login
Then user melihat pesan error
*/
test('Username benar dan password benar', async ({ page }) => {
await page.goto('https://the-internet.herokuapp.com/login');
await page.fill('#username', 'tomsmith');
await page.fill('#password', 'SuperSecretPassword!');
await page.click('button[type="submit"]');
await expect(page.locator('#flash')).toContainText('You logged into a secure area!');
await expect(page).toHaveURL(/secure/);
await page.screenshot({ path: 'screenshots/login-success.png', fullPage: true });
});
test('Username benar dan password salah', async ({ page }) => {
await page.goto('https://the-internet.herokuapp.com/login');
await page.fill('#username', 'tomsmith');
await page.fill('#password', 'password_salah');
await page.click('button[type="submit"]');
await expect(page.locator('#flash')).toContainText('Your password is invalid!');
await page.screenshot({ path: 'screenshots/login-failed.png', fullPage: true });
});