在空手道中,您可以通过
configure
关键字设置某些框架设置,例如
* configure httpTimeout = 5000
* configure ssl = true
* eval karate.configure('readTimeout',10000);
但是如何才能看到这些设置的值呢?你能确定默认值吗?如果您需要在测试的一部分中临时覆盖它们并在之后恢复之前的值怎么办?
karate.configure()
方法和configure
关键字链接回核心Karate对象,它是ScenarioEngine的子实例。您可以通过 karate.getEngine()
方法从 Javascript 互操作中访问这些对象,该方法又具有 getConfig()
方法来访问这些值的 getter 和 setter。
* eval print(karate.getEngine().getConfig().getReadTimeout());
* eval karate.configure("readTimeout",12345)
* eval print(karate.getEngine().getConfig().getReadTimeout());
将打印:
30000
12345
显示原始默认值 30000,并确认更新值 12345。(这与使用
configure
关键字的工作方式完全相同。)
您可以使用 JS 的 Object.keys() 来查看
.config()
返回的对象上配置值的所有可用 getter 和 setter 方法。