我可以在运行时传递命令行参数
python <filename>.py arg1
Run Code Online (Sandbox Code Playgroud)
但是当我尝试传递运行 pytest 的命令行参数时,它失败并给出如下错误。你能给些建议么。
pytest <filename>.py arg1
ERROR: file not found: arg1
Run Code Online (Sandbox Code Playgroud)
编辑:
例如,我正在考虑以这种方式使用它,假设我已经传递了一个参数并且正在通过 sys.argv 读取它:
import sys
arg = sys.argv[3]
def f():
return 3
def test_function():
assert f() == arg
Run Code Online (Sandbox Code Playgroud) 我使用下面的代码来测试基本的Web服务.当我传递普通字符串时,它工作正常 - 例如http://localhost.com:8080/CheckRest/rest/pmg?p1=xyz.它显示了HELLO xyz
但是,当我向URL添加"#"时,它不会给出正确的输出 - 例如http://localhost.com:8080/CheckRest/rest/pmg?p1=xyz#abc.然后显示HELLO xyz而不是HELLO xyz#abc
package com.check.ws;
import javax.ws.rs.GET;
import javax.ws.rs.Path;
import javax.ws.rs.Produces;
import javax.ws.rs.QueryParam;
import javax.ws.rs.core.MediaType;
@Path("/pmg")
public class CheckCall {
@GET
@Produces(MediaType.TEXT_PLAIN)
public String sayPlainTextHello() {
return " ";
}
// This method is called if XML is request
@GET
@Produces(MediaType.TEXT_XML)
public String sayXMLHello() {
return "<?xml version=\"1.0\"?>" + "<pmg> </pmg>";
}
// This method is called if HTML is request
@GET
@Produces(MediaType.TEXT_HTML)
public String sayHtmlHello(@QueryParam("p1") …Run Code Online (Sandbox Code Playgroud)