问题标签 [awaitility]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
spring-boot - 如何在 Spring Boot 中使用 Awaitility 测试安全端点?
我正在使用 spring boot,我想通过使用MockMvc调用安全端点来断言异步副作用。
我一直在使用Awaitility,但显然在不同线程中执行时模拟的安全上下文会丢失。
我找不到传递上下文的方法,我尝试过SecurityContextHolder.setContext()
但没有用,我猜 Spring 的 MockMvc 以不同的方式存储上下文。
GET 将返回 404 一段时间,然后在异步任务完成时返回 200。但是,由于MockUser信息丢失,这将始终返回 403 。
我该如何解决这个问题?
java - 在等待 lambda 失败条件下处理内部异常
我有一些使用 Awaitility 库(https://mvnrepository.com/artifact/org.awaitility/awaitility/4.0.2)的功能测试,我需要的是用它运行一些代码并在如果条件失败,直到成功,或者时间超过等待条件的限制。
到目前为止,我有这个:
如果超过 10 秒限制,如果此条件失败,我得到的是:
那么如何显示导致等待条件未成功的真实代码异常,同时还具有在代码失败时运行某些代码的功能?
先感谢您。
java - 如何在服务员的每次迭代中重新加载页面
我想在每次迭代时重新加载页面Awaitility.await()
以检查元素的文本是否已更改。
我的代码:
我想.pollInterval
每 5 秒重新加载一次页面,其中:
我怎样才能做到这一点?或者用java建议一个更好的解决方案。谢谢!
java - 等待不工作 JAVA+APPIUM+CUCUMBER
我目前在使用 java 等待库时遇到了一个奇怪的问题。我正在使用等待等待一分钟并使用以下语句检查一个条件。
奇怪的是,上述语句适用于示例 Appium 测试脚本,但同样不适用于 cucumber+Appium+ java 框架并引发以下错误。
testing - Awaitility 的 `during` 和 `atMost` 周围的不可预测的行为
在我测试 Kafka 时,我最终遇到了一些关于 Awaitility 的问题。目标是测试 Kafka 主题在指定时间内不包含新记录。这是我测试的简化版,但它显示了问题。我希望 ConditionTimeoutException 在这种情况下不会抛出。但确实如此。
我将atMost
超时增加到 5000 + pollInterval -> 5100 但仍然以异常结束。在我的本地机器上抛出异常被停止关闭atMost
超时值 5170-5180。我应该记住一些事情吗?还是测试不正确?
java - 具有等待性的 ReaciveCrudRepository
编写测试,但不确定如何重写此代码:
反应一:
笔记:
第一个 findById() 签名是:可选的 findById(Long id)
第二个 findById() 签名是:Mono findById(ID id)
javascript - 控制台语句不等待 javascript 中的函数返回
我正在尝试将变量初始化为函数x
返回的值showData
。这是我的代码:
这是showData
功能:
但是,控制台显示undefined
. 如果我添加console.log(data)
到showData
函数中,我可以看到我能够成功地从数据库中获取数据。
我知道由于 JavaScript 的同步属性,console.log(x)
它不等待执行。showData()
如何从函数中获取值并将其记录到控制台,而不是获取undefined
?
java - 使用等待来确定没有发生的事情
有没有办法使用 Awaitility 来断言没有任何改变?我想验证一个主题没有被写入,但是因为没有状态变化,Awaitility 不喜欢这样。例如,此代码给出以下错误。谢谢
kotlin - 如何确保异步测试不会干扰另一个?
我想对我的函数的行为进行单元测试,该函数使用对外部 API 的异步调用(使用 WebClient,但我怀疑它是否相关)。函数流程的简化版本是这样的
因此,在我的测试文件中,我有 2 个测试,分别测试两个 if 分支。
在满足条件的测试中,我使用 MockWebServer 模拟了外部 API 调用,然后使用Awaitility等待调用结束
在另一项测试中,我检查是否未进行此调用:
verify (exactly = 0) { externalApi.post() }
当我分别运行这两个测试时,它们都可以顺利运行。当我同时运行它们时会出现问题(我运行文件的所有测试,方式相同maven test
)。然后,我的第二个测试失败了,可能是因为它看到了另一个测试中的调用。
我不熟悉线程中的执行上下文,所以我对正在发生的事情有一个浅薄的了解
我尝试过的:
- 锁定我的测试函数,将其锁定在 @BeforeEach 并在 @AfterEach 解锁,以便它们按顺序运行
- 在我的代码中用协程替换线程
- 天真地将 Thread.sleep() 放在我的测试中以强制它等待
这些都没有奏效,我很茫然。任何人都可以帮忙吗?