我想测试一个特定的方法是否会产生预期的结果,但要做到这一点,我还需要在测试中操作输入。我是否应该在实际课程中重复代码
class ToTest {
public String produceResponse(String input) {
// ....
encryptedIds = encryptIds(input)
output = doStuff(input, encryptedIds)
}
public encryptIds(input) {
....
}
}
在我的测试中,我需要检查produceResponse实际上是否产生预期的响应。 为了做到这一点,我必须加密输入中的ID。
我的问题是:我应该在测试中重写encryptIds(这样我就可以有更多的控制器)或者我应该从类本身调用encryptIds。
有没有更好的方法来解决这个问题?我不喜欢我的测试,我知道特定流程会发生什么。
如果encryptIds不是API的一部分,该怎么办? – user844541
增加了更多描述 – Crazyjavahacking