我有一个应用程序,可以显示来自web的数据(帖子)。
后台服务在某个未知时间同步这些数据并保存它。
当访问我的主要活动时,它会加载这些数据并将其显示在RecyclerView中。
加载是通过单例类处理的。
我目前测试的主要活动如下
@Rule
public ActivityTestRule<MainActivity> mActivityRule = new ActivityTestRule<>(MainActivity.class);
@Test
public void testDataLoad() {
int postsTotal = D
我使用的是ORM,获取记录对象的方法是使用FooModel::find(1)。FooModel有一个我需要模拟以进行测试的方法。我该怎么做呢?(不能使用PHPUnit mock,因为这样会得到一个与ID为1的记录不对应的模拟FooModel。)
编辑
示例:
class FooModel
{
// ORM model that fetches record from the DB
public function thisNeedsToBeMocked()
{
// some code here that depends on external fact
我们正在应用程序中实现“同步到日历”功能。我们的同步过程涉及从服务器端获取的事件,我们希望将这些事件复制到iPhone日历中。目前,我不确定我们为这个同步编写的方法是否解决了所有可能的情况--这就是我想要对它进行单元测试的原因。它包含对EKEventStore的多次调用,正如苹果文档所述,这些调用需要首先用requestAccessToEntityType:completion:调用:
在iOS 6及更高版本上,必须在使用requestAccessToEntityType:completion: for data to return初始化事件存储后请求对实体类型的访问。
在运行单元测试
是否有一种方法来设置AutoFixture.AutoMoq,以便在模拟抽象类时使用特定的构造函数?
我需要测试在抽象类中完成的实现。但是,我确实需要使用一个特定的构造函数。
public abstract class A
{
public A(IQueryable q) // I need to use this
{ /*...*/ }
}
致以敬意,
编辑:
我试图使用类似于下面的东西,但仍然不起作用。这个类是抽象的,所以我需要模拟它,但是我需要一个非常具体的构造函数。
如何告诉AutoMoq,当嘲笑A时,请不要使用MockConstructorQuery或GreedyMo