iT邦幫忙

2021 iThome 鐵人賽

DAY 17
0
Modern Web

我不會測試,所以寫Jest與React Testing Library系列 第 17

Day 17 快沒文章了 先偷渡cypress 改天改寫一下

  • 分享至 

  • xImage
  •  

.url 抓取測試url

.window 使用window物件

.its 在window底下使用localstorage

import { buildUser } from '../xx';

describe('register a new user', () => {
	const user = buildUser();

	cy.visit('/')
		.findByText(/register/i)
		.click()
		.findByLobelText(/username/i)
		.type(user.username)
		.findByLobelText(/password/i)
		.type(user.password)
		.findByText(/submit/i)
		.click()
		.url()
		.should('eq', 'http://localhost:8080/')
		.window()
		.its('localhost.token')
		.should('be.a', 'string')
		.findByTestId('username-display')
		.should('have.text', user.username)
});

模擬 http responsive error

cy.server().route({
	method: 'POST',
	url: 'http://localhost:3000/register',
	status: 500,
	response: {},
});

模擬request

cy.request({
	url: 'http:/localhost:3000/register',
	method: 'POST',
	body: user,
});

很多重複的指令,可以透過custom commands 去

cy.server().route({
	method: 'POST',
	url: 'http://localhost:3000/register',
	status: 500,
	response: {}
})

上一篇
Day 16 偷偷摸魚放個waitFor
下一篇
Day 18 終於寫了一個測Provider的最初版
系列文
我不會測試,所以寫Jest與React Testing Library30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言