草庐IT

pytest参数化:@pytest.mark.parametrize

全部标签

c# - 命令行解析器库 - bool 参数

我尝试将bool参数传递给控制台应用程序并使用CommandLineParserLibrary处理该值.[Option('c',"closeWindow",Required=true,HelpText="Closethewindow.")]publicboolCloseWindow{get;set;}我尝试将参数传递为-cfalse-cFalse-c"false"-...没有区别,每次尝试我都会得到“true”作为值。谁能告诉我如何传递参数以获得bool值false?为了避免可能的询问,有一个正确传递的字符串选项:[Option('s',"system",Required=true,H

c# - 重新抛出无参数 catch 和什么都不做的区别?

假设我在两个不同的程序集中有以下两个类://inassemblyApublicclassTypeA{//ConstructoromittedpublicvoidMethodA{try{//dosomething}catch{throw;}}}//inassemblyBpublicclassTypeB{publicvoidMethodB{try{TypeAa=newTypeA();a.MethodA();}catch(Exceptione)//Handleexception}}}在这种情况下,MethodA中的try-catch只是提升了异常,但并没有真正处理它。在MethodA中使用t

c# - 将参数传递给正在运行的应用程序

我正在制作一个图像uploader(将图像上传到图像托管网站),但我在传递参数(图像位置到已运行的应用程序)时遇到了一些问题首先假设MyApp.exe一直在运行每当我右键单击图像时,我都会在默认的Windows上下文菜单中添加一个项目,上面写着“上传图像”。当点击它时,它需要将位置传递给已经运行的应用程序。我的程序.cs:staticclassProgram{[DllImport("user32.dll")]staticexternIntPtrFindWindow(stringlpClassName,stringlpWindowName);[DllImport("user32.dll"

c# - 定义不指定参数的抽象方法

我正在编写一个带有抽象方法的抽象类(因此,所有从它继承的类都必须实现该方法)。但是,我不想指定方法必须使用的参数,因为每个方法可能采用不同的参数或没有参数。只有名称和返回值应该相同。有没有办法在C#中执行此操作?感谢您的帮助! 最佳答案 不,这样做毫无意义。如果您没有声明参数,您将无法调用仅给出对基类的引用的方法。这就是抽象方法的意义所在:让调用者不必关心具体的实现,而是给他们一个API来使用。如果调用者需要知道确切的方法签名,那么您就将该调用者绑定(bind)到一个具体的实现,从而使抽象本质上无用。也许如果您可以提供更多细节,我们

c# - Moq:Lambda 表达式作为参数并在返回中评估它们

在我的单元测试中,我希望能够在接受lambda表达式的工作单元中最小化存储库的“查找”功能。例如:publicvirtualIQueryableFind(Expression>predicate){//FindOPS}我在我的单元测试中创建了测试列表来表示我的dbSet(我还省略了很多抽象以使这个问题更简单):[TestMethod]publicvoidFindTest(){varmockUnitOfWork=newMock();vartestList=newList{//Testvalues}//HereiswhereIamstuck:mockUnitOfWork.Setup(uow

c# - 将参数传递给 PrivateObject 方法

这个问题在这里已经有了答案:HowtopassaparameterasareferencewithMethodInfo.Invoke(2个答案)关闭8年前。我正在尝试对私有(private)方法进行单元测试。我在下面看到了这个question的例子Classtarget=newClass();PrivateObjectobj=newPrivateObject(target);varretVal=obj.Invoke("PrivateMethod");Assert.AreEqual(retVal);我的私有(private)方法有2个引用参数。如何通过它们?

c# - 在声明点使用变量作为输出参数

当读取comment时对于一个答案,我看到了以下构造来声明和初始化变量:intvariable=int.TryParse(stringValue,outvariable)?variable:0;这在C#中是否被允许、正确且定义明确?引擎盖下发生了什么?会发生以下情况吗?变量是否首先初始化为零?然后传递给int.TryParse(它赋值)?然后可选地读取(如果int.TryParse返回true)?然后,再次分配/初始化? 最佳答案 是的,你适合处决。您还可以查看此处生成的MSILC#代码stringstringValue="5";i

c# - Moq 具有 5 个以上参数和访问调用参数的函数

我有一个功能我要最小起订量。问题是它需要5个参数。该框架仅包含Action和最小起订量的通用CallBack()仅重载Action和四个通用版本。有没有优雅的解决方法?这就是我想要做的:publicclassFilter:IFilter{publicintFilter(inti1,inti2,inti3,inti4,inti5){return0;}}//Moqcode:varmocker=newMock();mocker.Setup(x=>x.Filter(It.IsAny(),It.IsAny(),It.IsAny(),It.IsAny(),It.IsAny(),It.IsAny()

c# - 参数计数与 Invoke 不匹配?

下面的代码块导致错误:用户代码未处理TargetParameterCountException。参数计数不匹配。publicvoidAddListViewItem(string[]Data){if(InvokeRequired){Invoke(newAction(AddListViewItem),Data);}else{ListViewData.Items.Add(Data[0]).SubItems.AddRange(newstring[]{Data[1],Data[2],Data[3],});}}有什么想法吗? 最佳答案 错误是由

c# - 使用 HttpClient 和 Web API 方法 [FromBody] 参数发布到 Web API 最终为空

我正在尝试使用HttpClient发布到WebAPI。当我在WebAPI的Save方法中放置断点时,[FromBody]Product为空。这意味着我将产品发布到WebAPI的方式有问题。有人可以看看下面的代码,看看我可能哪里出错了。我假设它与标题和内容类型有关。从客户端存储库到WebAPI的POST调用应将产品对象作为JSON传递:publicasyncTaskSaveProduct(Productproduct){using(varclient=newHttpClient()){client.BaseAddress=newUri("http://localhost:99999/")