apache / apache/servicecomb-java-chassis
TestRestClientInvocation的单元测试无法有效验证功能
- 主要语言
- Java
- 星标
- 1.9k
- 派生
- 814
- 平均合并
- 8 天 23 小时
- 30 天内合并 PR
- 1
描述
问题出在 `TestRestClientInvocation` 的 `testSetCseContext_enable_unicode` 方法和 `testSetCseContext_disable_unicode` 方法中, 两个方法都是开头对`invocation.getContext()`进行mock, 结尾又调用`invocation.getContext()`获取结果进行校验, 获取的结果就是mock返回, 所以达不到测试的预期效果. 1.3.x 和 2.8.x 分支均有此问题, 建议优化一下UT代码.
https://github.com/apache/servicecomb-java-chassis/blob/21d4b4863b71332f151eb63020f4e9ac51583002/transports/transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/http/TestRestClientInvocation.java#L282-L346
贡献指南
这个仓库没有索引到贡献指南
调研方向
打开 transport-rest/transport-rest-client/src/test/java/org/apache/servicecomb/transport/rest/client/http/TestRestClientInvocation.java,检查 testSetCseContext_enable_unicode 和 testSetCseContext_disable_unicode。首先跟踪 invocation.getContext() 是如何被 mock 的,然后运行这些测试,并确认它们的 assertions 检查的是方法产生的状态,而不是 mock 的返回值。完成标准是两个测试都能有意义地验证 1.3.x 和 2.8.x 分支上的 Unicode context 行为。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- java
- 领域
- testing
- Issue 类型
- 缺陷
- 难度
- 2/5
- 预计耗时
- 1-3 小时
- 活跃度
- 停滞
- 描述清晰度
- 描述清楚
- 新手友好度
- 35/100