我需要对抽象类中定义的虚拟方法进行单元测试。但基类是抽象的,所以我无法创建它的实例。你建议我做什么?
这是以下问题的后续问题:我正在考虑是否可以通过抽象类的子类的实例进行测试。这是个好办法吗?我该怎么做?
测试计划、测试套件、测试用例和测试场景之间有什么区别?质量保证团队是否遵循任何格式或可遵循的通用格式?
下面我粘贴了我的代码。我正在验证一项措施。我已经编写了读取 Linux 文件的代码。但如果我想在这里传递多个文件名,这可能吗?例如,我可以做一个循环,而不是只验证一个文件,这样它就可以一次性准备好多个文件。
一旦文件被读取并继续,我就返回actualItemData。在我的下一个方法中,我想对此进行调用,actualItemData以便数据发布在我的var actual
public string validateMeasurement
{
var processFilePath = **"/orabin/app/oracle/inputs/ff/ff/actuals/xx_ss_x.csv.ovr";**
var actualItemData = Common.LinuxCommandExecutor.
RunLinuxcommand("cat " + processFilePath);
**return actualItemData;**
}
public void validateInventoryMeasurementValue(string Data, string itemStatus)
{
var expected = '6677,6677_6677,3001,6';
**var actual = actualItemData);**
Assert.AreEqual(expected, actual);
}
Run Code Online (Sandbox Code Playgroud) 我创建了一个 Injectable,其中包含要使用的同一文件中的全局变量的声明。我能够让它在代码中工作。但在我的测试中,声明失败并出现未定义的错误。
declare var myGlobal;
@Injectable()
export class HttpService {
constructor() {
console.log(myGlobal);
}
}
Run Code Online (Sandbox Code Playgroud)
我正在测试一个组件,并且需要此服务作为组件测试的测试台中的提供者。
以下是它的调用方式:
@Component({
...
})
export class AppComponent {
constructor(_h: HttpService) {
}
ngOnInit(): void {
this._h.fileUrl = window.location.href;
this.getSettings(this._h.settingsSrc);
}
}
Run Code Online (Sandbox Code Playgroud)
以下是测试中服务的声明
beforeEach(async(() => {
const settingsFile = 'json';
TestBed.configureTestingModule({
declarations: [
AppComponent,
MenubarComponent,
],
imports: [
HttpClientModule,
],
providers: [
HttpService
],
}).compileComponents();}))
it('getSettings() tests', inject([HttpService], async(async (_h: HttpService) => {
const cmp = new AppComponent(_h);
await cmp.ngOnInit(); // this is where the …Run Code Online (Sandbox Code Playgroud) 我正在开发一个 Rails 应用程序,为我的用户使用 stripe connect。在我使用条带测试连接(快速模式)的测试应用程序中,我无法输入正确的法国路由帐户和正确的银行帐户。每次我都会遇到以下错误:“无效的路由号码”第二个想法是我无法选择信用卡而不是银行帐号。有人有解决方案来测试我的 Stripe 与工作号码的连接或其他解决方案吗?条纹文档对这些数字没有帮助......Thks,Samy
通过阅读周围的内容,当您必须监视您正在单元测试的当前方法所使用的方法时,这通常是不好的做法,并且是代码异味的迹象。
例如,我有一个正在单元测试的方法:
public MyResponseObject doStuff(MyRequestObject obj) {
WebTarget tar = getServiceClient().target(obj.toString());
Response res = tar.path(someURI).request().post(somejson);
if(response.getStatus() == 200) {
String jsonResp = response.readEntity(String.class);
return convertToObj(jsonResp);
}
}
Run Code Online (Sandbox Code Playgroud)
我尝试解决上述问题的一种方法是
结果如下:
public MyResponseObject doStuff(MyRequestObject obj) {
Response res = sendRequest(obj.toString());
if(response.getStatus() == 200) {
String jsonResp = response.readEntity(String.class);
return convertToObj(jsonResp);
}
}
//extracted method
public Response sendRequest(String json){
WebTarget tar = getServiceClient().target(someUrl);
return res = tar.path(someURI).request().post(somejson);
}
//My unit test …Run Code Online (Sandbox Code Playgroud) 尝试进行测试以确保只能为类型化变量分配某些值。如果分配了无效值,是否有一种方法可以使用 jest 抛出错误,而不会阻止测试运行并在测试运行之前抛出错误?
In class constructor:
defaultValue: string | null
In test:
expect(() => instance.defaultValue = 100).toThrow()
Run Code Online (Sandbox Code Playgroud)
我希望测试应该运行并确认这确实会引发错误,但该错误是在测试运行之前引发的,从而阻止所有测试运行。
我正在尝试使用摩卡进行单元测试。我正在使用打字稿,它通过 tsc 编译为纯 JavaScript。我总是收到错误:
src\index.ts:22
[new FrontendEndpoint(), ...],
^
TypeError: v1_1.default is not a constructor
Run Code Online (Sandbox Code Playgroud)
我采用了两种方法(并两次遇到同样的问题):
首先,我创建了一个虚拟测试test.test.ts,导入一些模块用于测试目的:
import { APIServer } from './../api/index';
import { describe } from 'mocha';
import FrontendEndpoint from '../api/endpoints/frontend/v1';
import { SocketConnector } from '../api/sockets/socketio';
describe('TestTest', () => {
it('should run', (done) => {
const server = new APIServer(4000, [new FrontendEndpoint()], new SocketConnector([]));
done();
});
});
Run Code Online (Sandbox Code Playgroud)
使用 ts-mocha
ts-mocha src/test/test.test.ts使用 mocha 和编译的 ts 文件
mocha build/test/test.test.js两种方法都会产生上述错误。
index.ts …
我如何测试它是否应该找到像 Icons.visibility 这样的特定图标?这是我的测试:
testWidgets(
'Should find visibility_off icon',
(WidgetTester tester) async {
await _buildApp(tester);
await tester.pumpAndSettle();
expect(find.byWidget(Icon(Icons.visibility)), findsOneWidget);
});
Run Code Online (Sandbox Code Playgroud) 我有 2 个变量,想要检查其按字母顺序排序。
这是我的代码
cy.get('.list-item').eq(1)
.find('.activity-name span')
.invoke('text')
.then(text => {
const first = text;
cy.get('.activity').click();
cy.get('.list-item').eq(1)
.find('.activity-name span')
.invoke('text')
.then(text => {
const second = text;
// Here I want to check if the result of first element is equal second-variable
});
});
Run Code Online (Sandbox Code Playgroud)
请帮助我。我怎样才能用柏树做到这一点
testing ×10
c# ×2
javascript ×2
typescript ×2
unit-testing ×2
angular ×1
components ×1
cypress ×1
flutter ×1
icons ×1
jasmine ×1
java ×1
jestjs ×1
karma-runner ×1
mocha.js ×1
mockito ×1
nunit ×1
sorting ×1
test-plan ×1
testcase ×1
types ×1