Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/unit-testing/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Unit testing XamarinWeb服务单元测试_Unit Testing_Xamarin - Fatal编程技术网

Unit testing XamarinWeb服务单元测试

Unit testing XamarinWeb服务单元测试,unit-testing,xamarin,Unit Testing,Xamarin,您能建议如何在xamarin表单中为web服务编写单元测试吗?我在运行时遇到了一个错误 [TestFixture()] public class LeadRepositoryTest { private Mock<ILeadWebService> mockLeadWebService { get; set; } private Mock<ILeadDatabaseService> mockLeadDatabaseSe

您能建议如何在xamarin表单中为web服务编写单元测试吗?我在运行时遇到了一个错误

    [TestFixture()]
    public class LeadRepositoryTest
    {
        private Mock<ILeadWebService> mockLeadWebService { get; set; }
        private Mock<ILeadDatabaseService> mockLeadDatabaseService { get; set; }
        private LeadService leadRepository { get; set; }

        public LeadRepositoryTest()
        {
            var repository = new MockRepository(MockBehavior.Default) { DefaultValue = DefaultValue.Empty };
            mockLeadWebService = repository.Create<ILeadWebService>().As<ILeadWebService>();
            mockLeadDatabaseService = repository.Create<ILeadDatabaseService>().As<ILeadDatabaseService>();
            mockLeadWebService.Setup(x => x.GetNormalLeads(CommonMockData.GetLeadRequestParams())).Returns(Task.FromResult(OperationResult.CreateSuccessResult(new GetLeadsApiResponseDTO())));
            leadRepository = new LeadService(mockLeadDatabaseService.Object, mockLeadWebService.Object, null, null);
        }

        [Test()]
        public async void GetNormalLeads_WebServiceIsNotNull()
        {
            //Arrange
            var parameters = new LeadRequestParams()
            {
                Offset = 0,
                Limit = 20,
                PageName = "Today",
           };

            //Act
            var operationResult = await leadRepository.GetNormalLeads(parameters);
            //Assert
            Assert.IsNotNull(operationResult?.Data);

        }
    },
[TestFixture()]
公共类LeadRepositoryTest
{
私有模拟mockLeadWebService{get;set;}
私有模拟mockLeadDatabaseService{get;set;}
私有LeadService leadRepository{get;set;}
公共领导地位测试()
{
var repository=newmockrepository(MockBehavior.Default){DefaultValue=DefaultValue.Empty};
mockLeadWebService=repository.Create().As();
mockLeadDatabaseService=repository.Create().As();
mockLeadWebService.Setup(x=>x.GetNormalLeads(CommonMockData.GetLeadRequestParams()).Returns(Task.FromResult(OperationResult.CreateSuccessResult(new GetLeadsApiResponseDTO()));
leadRepository=新的LeadService(mockLeadDatabaseService.Object,mockLeadWebService.Object,null,null);
}
[测试()]
public异步void GetNormalLeads\u webservicesnotnull()
{
//安排
var参数=新的LeadRequestParams()
{
偏移量=0,
限值=20,
PageName=“今天”,
};
//表演
var operationResult=await leadRepository.GetNormalLeads(参数);
//断言
Assert.IsNotNull(operationResult?.Data);
}
},

我认为您真正需要的是:

var mockLeadRepository = new Mock<ILeadService>();
mockLeadRepository.Setup(x => x.GetNormalLeads(It.IsAny<Object>())).Returns(Task.FromResult(OperationResult.CreateSuccessResult(new GetLeadsApiResponseDTO())));
leadRepository = mockLeadRepository.Object;
var mockLeadRepository=new Mock();
mockLeadRepository.Setup(x=>x.GetNormalLeads(It.IsAny())).Returns(Task.FromResult(OperationResult.CreateSuccessResult(new-GetLeadsApiResponseDTO()));
leadRepository=mockLeadRepository.Object;

你能提供你的错误吗?应用程序崩溃如下图所示。没有,只有测试用例在你的构造函数和测试方法的第一行设置断点。已经完成了,但是你能给我提供任何示例吗shashikant0423@gmail.com