[英]How to add custom request header to testcafe test suite?
我有一堆测试正在通过 testcafe 运行。 现在我需要为每个测试添加一个自定义请求 header,以唯一标识调用来自 testcafe 套件而不是真实用户。
有没有办法一次将自定义 header 添加到所有测试用例?
我正在看这个,但似乎我需要更新每个固定装置才能使其正常工作。 所以,我想知道是否有办法在调用测试套件之前将其设置在顶级文件中?
编辑:
所以,这就是我目前正在做的事情。 我创建了一个包含 class 的新文件:
import { RequestHook } from 'testcafe';
class CustomHeader extends RequestHook {
constructor () {
// No URL filtering applied to this hook
// so it will be used for all requests.
super();
}
onRequest (e) {
e.requestOptions.headers['my_custom_variable'] = 'my_value';
}
onResponse (e) {
// This method must also be overridden,
// but you can leave it blank.
}
}
const customHeader = new CustomHeader();
export default customHeader;
然后在我的每个测试文件中,将固定装置更新为如下所示:
import { customHeader } from 'customer_header'
fixture(`Test app avail`)
.page(appURL)
.requestHooks(customHeader)
.beforeEach(async() => {
await myTestfunction();
});
这有意义吗?
目前无法在测试运行级别指定挂钩。 但是,如果在您的情况下更新每个固定装置不合理,您可以使用有关此功能的讨论中发布的解决方法。 为了将您的请求挂钩应用到测试套件中的每个装置,您需要更改“setup.js”(来自上面的解决方法),如下所示:
export const fixture = (...args) => global.fixture(...args)
.requestHooks(customHeader)
.beforeEach(async t => {
console.log('each');
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.