Kujenga mtihani wa kimsingi kwa kutumia Mocha na Chai
Ili kuunda jaribio la msingi kwa kutumia Mocha na Chai, unaweza kufuata hatua hizi:
1. Sakinisha Mocha na Chai: Tumia npm (Kidhibiti cha Kifurushi cha Node) kusakinisha Mocha na Chai katika mradi wako wa Node.js. Tekeleza amri ifuatayo kwenye saraka ya mradi wako:
npm install mocha chai --save-dev
2. Unda faili ya majaribio: Unda faili mpya, kwa mfano test.js, na ulete matamko yafuatayo ili kutumia Mocha na Chai:
const chai = require('chai');
const expect = chai.expect;
describe('Example Test Suite', () => {
it('should pass the test', () => {
expect(2 + 2).to.equal(4);
});
});
3. Endesha jaribio: Fungua terminal na uendeshe mocha amri ya kutekeleza majaribio. Ikiwa kila kitu kinakwenda vizuri, utaona matokeo yaliyoonyeshwa kwenye terminal.
Jaribio hili la msingi hutumia Mocha na Chai kuangalia hesabu rahisi. Katika mfano hapo juu, tunaangalia kuwa matokeo ya operesheni 2 + 2yanapaswa kuwa sawa na 4. Ikiwa matokeo ni sahihi, mtihani utapita.
Kwa kuongeza describe na it kuzuia, unaweza kuunda majaribio changamano zaidi na kuangalia sehemu tofauti za msimbo wako wa chanzo.
Kumbuka kuwa unaweza pia kutumia mbinu zingine za kudai zilizotolewa na Chai, kama vile assert au should, kwa majaribio. Utumiaji mahususi unategemea chaguo lako na jinsi unavyotaka kupanga msimbo wako wa jaribio.
Kwa kutumia madai na hoja ili kuthibitisha matokeo ya utendakazi
Unapotumia Mocha na Chai kwa majaribio, unaweza kutumia madai na maswali kuangalia matokeo ya utendakazi. Hapa kuna mifano ya kutumia madai na maswali ili kuangalia matokeo ya kazi:
1. Tumia expectmadai na to.equalhoja kuangalia matokeo ya chaguo za kukokotoa ambayo inaleta thamani mahususi:
const result = myFunction();
expect(result).to.equal(expectedValue);
2. Tumia madai ya `tarajia` na to.be.trueau to.be.falsehoja ili kuangalia matokeo ya chaguo za kukokotoa ambazo hurejesha thamani ya boolean:
const result = myFunction();
expect(result).to.be.true; // or expect(result).to.be.false;
3. Tumia madai ya `tarajia` na to.be.nullswali la au to.be.undefined ili kuangalia matokeo ya chaguo za kukokotoa ambazo hurejesha thamani isiyo na maana au isiyobainishwa:
const result = myFunction();
expect(result).to.be.null; // or expect(result).to.be.undefined;
4. Tumia expectmadai na to.includehoja ili kuangalia kama thamani imejumuishwa katika safu au mfuatano:
const result = myFunction();
expect(result).to.include(expectedValue);
5. Tumia expectmadai na to.have.lengthOfhoja kuangalia urefu wa safu au mfuatano:
const result = myFunction();
expect(result).to.have.lengthOf(expectedLength);
Mifano hii ni baadhi tu ya njia nyingi za kutumia madai na hoja katika Mocha na Chai ili kuangalia matokeo ya utendakazi. Unaweza kubinafsisha na kutumia madai na hoja zinazofaa kulingana na mahitaji ya majaribio ya mradi wako.
Inaunda kesi za majaribio zilizofaulu na zilizofeli
Wakati wa kuandika kesi za majaribio na Mocha na Chai, ni muhimu kushughulikia hali zote za kufaulu na kutofaulu. Hapa kuna mifano ya kuunda kesi za majaribio kwa hali zilizofaulu na kutofaulu:
1. Uchunguzi Uliofaulu wa Mtihani:
describe('myFunction', () => {
it('should return the expected result', () => {
// Arrange
const input = // provide the input for the function
const expected = // define the expected result
// Act
const result = myFunction(input);
// Assert
expect(result).to.equal(expected);
});
});
2. Kesi ya Mtihani wa Kufeli:
describe('myFunction', () => {
it('should throw an error when invalid input is provided', () => {
// Arrange
const invalidInput = // provide invalid input for the function
// Act and Assert
expect(() => myFunction(invalidInput)).to.throw(Error);
});
});
Katika kesi ya jaribio la mafanikio, unafafanua ingizo la chaguo la kukokotoa na matokeo yanayotarajiwa. Kisha, unaita chaguo za kukokotoa na ingizo na kudai kuwa matokeo yanalingana na thamani inayotarajiwa.
Katika kesi ya jaribio la kutofaulu, unatoa ingizo batili kwa chaguo za kukokotoa na kudai kwamba inaleta hitilafu. Hii inahakikisha kuwa kipengele cha kukokotoa kinashughulikia ipasavyo hali ya uingizaji au hitilafu batili.
Kwa kuangazia hali za kufaulu na kutofaulu katika visa vyako vya majaribio, unaweza kuhakikisha kuwa nambari yako imejaribiwa kikamilifu na kushughulikia hali tofauti ipasavyo.