I want to test a function in a class but it relies on the object which isn't called

2 次查看(过去 30 天)
So I have a class which calls another class then the method in the lower class. I have now moved onto unit testing this functions. In the lower class the method has a series of if statements which depends on the object. However the object isn't used when calling the function.
It would be very complicated to instantiate the upper class prior to instantiating the lower class then calling the method. So that the object is in use. Can I just call the method using the object as an input?
  3 个评论
Katherine
Katherine 2024-2-1
Sorry I am not used to class and I did not make the class so I am sorry if I didn't explain it well
Bascially the tests are failing, when something somewhere else changes. I believe this value is changed within the object at a higher level and passed down. So when I test the method in the lower class, the object isn't chnaged as its done in isolation, so the if statement is never triggered, so the result is returned wrong and the test fails.
When calling the method after instantiating the class in the test its " Output = className(Input)" but it never calls the now changed object.
When running the entire script I can save the changed object. But since its never called as shown above, how can I use it?
This call does not have static methods but in another class there is.
Does this make more sense?
Steven Lord
Steven Lord 2024-2-1
I think you should probably show a small concrete example of what you're describing. I'm not certain I understand what your implementation is doing from this prose description. In this case, a small chunk of code may be worth at least a few hundred words.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Construct and Work with Object Arrays 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by