我正在使用带有java的ChromeDriver和arquillian无人机框架来测试我们网页的本地化.要测试浏览器中设置的不受支持的语言环境的行为,我们通过命令行参数设置chromes语言环境:
--lang=it
Run Code Online (Sandbox Code Playgroud)
ACCEPT-LANGUAGE但是,生成的-header看起来像这样:
it-IT,it;q=0.8,en-US;q=0.6,en;q=0.4
Run Code Online (Sandbox Code Playgroud)
有没有办法让chromeDriver不能自动允许en_us和en?
我们正在开发一个 Spring Batch 应用程序,它将在未来处理“大”文件。为了保持低内存签名,我们在这些文件的尽可能小的块上使用 Spring Batch。处理后,我们希望将结果写回SFTP,这也会发生在输入文件的每个块中。
目前的做法如下:
StepExecutionListener.before()SftpOutboundAdapter:我们向with和空负载发送消息FileExistsMode.REPLACE以创建一个空文件(with .writing)
Reader:将读取输入文件
Processor:将使用结果增强输入并返回字符串列表
Writer:将字符串列表发送给SftpOutboundAdapter另一个FileExistsMode.APPEND
StepExecutionListener.after():如果执行成功,我们将重命名该文件以删除后缀.writing。
现在我看到有Streaming Inbound Adapters但我找不到Streaming Outbound Adapters。这真的是通过附加解决它的唯一/最好的方法吗?或者是否可以流式传输文件内容?
考虑两个类A,B如下所示:
class A {
private b: B;
public constructor(b: B){
this.b=b;
}
public doSomething(){
this.b.myMethod();
}
}
class B {
public myMethod(){...}
public someOtherMethod(){...}
}
Run Code Online (Sandbox Code Playgroud)
我想A在模拟的行为的同时测试类B.myMethod()
目前我们这样做:
const bMock: Partial<B> = {
myMethod: jest.fn(<some mock here>),
}
const sut = new A(bMock as any);
sut.doSomething();
expect(bMock.myMethod).toBeCalled();
Run Code Online (Sandbox Code Playgroud)
我们想要实现的是类似的结果,但不必通过模拟as any,也不必自己模拟所有方法。检查模拟类型对我们来说非常重要,否则我们将无法通过此测试捕获模拟依赖项中的重大更改。
我们也已经进行了研究sinon,但在某些情况下,我们不希望调用模拟依赖项的构造函数,因此在创建后对对象进行存根不是一种选择。对整个类进行存根会导致如上所述的类似问题。