Kujenga mtihani wa msingi 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 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 + 2
yanapaswa 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 ili kuangalia matokeo ya utendakazi. Hapa kuna mifano ya kutumia madai na maswali ili kuangalia matokeo ya kazi:
1. Tumia expect
madai na to.equal
hoja 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.true
au to.be.false
hoja 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.null
swali 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 expect
madai na to.include
hoja ili kuangalia kama thamani imejumuishwa katika safu au mfuatano:
const result = myFunction();
expect(result).to.include(expectedValue);
5. Tumia expect
madai na to.have.lengthOf
hoja 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 ndani Mocha na Chai 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 kuangazia 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.