Nkeji 6 / 11

Ọgbọ Nnwale Unit na Nnwale: Nnwale siri ike na AI

Uru:

  • Ikike igbochi ọgụgụ isi mmadụ ịnakwere omume na-ezighi ezi dị ka 'nke ziri ezi' site n'ịgbakọ uru a na-atụ anya na ule otu n'adabereghị na iwu nnabata.
  • Ikike ibipụta ule ngwa ngwa, nnwere onwe yana nke enwere ike imegharị ya site na itinye ụkpụrụ AAA na nke mbụ yana ịkwa emo dabere na mpụga.
  • Ikike iji nwalee ule na mutation (koodu imebi koodu) wee mata koodu siri ike ịnwale dị ka isi imewe

Okpokoro kacha na ngwa ngwa nke pyramid nnwale bụ nnwale nkeji - nnwale na-enyocha ọrụ ma ọ bụ obere mpempe koodu dịpụrụ adịpụ na ihe ọ bụla ọzọ. Ọtụtụ puku ule otu na-agba ọsọ n'ime sekọnd wee jide ahụhụ mgbe koodu ahụ ka dị na ihuenyo onye nrụpụta. Ọgụgụ isi (AI) nwere ike bụrụ ọkachamara kachasị n'ịmepụta ule otu: ị na-enye ya ọrụ, AI na-emepụta ọtụtụ ule. Ma nke a dị mma na-ebute ọnyà kasịnụ: AI na-emepụta ngwa ngwa ule nke "na-acha akwụkwọ ndụ akwụkwọ ndụ akwụkwọ ndụ mana achọpụtaghị ihe ọ bụla" ma ọ bụ nabata omume nke koodu ugbu a (ikekwe na-ezighị ezi) dị ka "zie ezie". N'ime nkeji a, ị ga-amụta ka e si dee ule nchebe n'ezie na AI yana mmekọrịta dị n'etiti koodu testable na AI.

Àgwà nke ezigbo ule unit: Mbụ

Ezi unit ule na-agbaso ụkpụrụ mbụ: ngwa ngwa, nnwere onwe (ule ekwesịghị ịdabere na ibe ya), Repeatable (repeatable — same result in any environment), Self-validating (clear pass/fail), Timely (on time). Chetara onwe gị ụkpụrụ ndị a mgbe ị nwere AI na-emepụta ule; Kpọmkwem rịọ ka ule ahụ ghara ịdabere na ụwa dị n'èzí (ezigbo nchekwa data, netwọk, elekere) ka ọ bụrụ "nnwere onwe" na "mmegharị".

Usoro AAA na nkwuputa okwu

Nnwale otu siri ike na-agbaso usoro AAA: Nhazi (kwadebe - melite ntinye na ịdabere na ya), Iwu (mezue - kpọọ ọrụ n'okpuru ule), kwupụta (kwenye - tụnyere nsonaazụ ya na uru a na-atụ anya ya). Ihe dị mkpa bụ ikwupụta. Ihe kachasị ihie ụzọ AI na-eme bụ ịnapụta nkwupụta sitere na mmepụta nke koodu n'okpuru ule - mgbagha "ihe ọ bụla koodu laghachitere bụ eziokwu". Nke a na-eme ule ahụ enweghị isi. Ụzọ ziri ezi bụ ikpebi uru a na-atụ anya n'onwe ya (site na njirisi nnabata, gbakọọ ya na aka).

Ntị: Ọ bụrụ na ị gwa AI "dee ule maka ọrụ a", AI nwere ike rụọ ọrụ ahụ wee dee mmepụta ya dị ka "atụ anya". Nnwale a na-agafe ọ bụrụgodị na ọrụ ahụ bụ ụgha. Kama, kwuo "ị na-agbakọ nsonaazụ a na-atụ anya ya dịka iwu ndị a si dị, atụla aka na mmepụta ugbu a nke ọrụ ahụ."

Nkwa emo, stubs na ịdabere

Nnwale otu nkeji chọrọ ikewapụ. Ọ bụrụ na ọrụ gị dabere na nchekwa data ma ọ bụ API, a na-eji ihe ndị na-akwa emo dochie ha (akwa emo/stub - ihe a na-achịkwa, ihe ngbanwe maka ezigbo ịdabere na ya) na nnwale. Nke a na-eme ka ule ahụ dị ngwa ngwa, nweere onwe ya na imepụtaghachi ya. AI nwere ike ịmepụta nrụnye ịkwa emo; Ma kpachara anya maka ịkwa emo nke ukwuu: ọ bụrụ na ị na-akwa emo ihe niile, ule ahụ ga-enyocha naanị "ihe ịkwa emo na-alaghachi", ọ bụghị ezi uche. Balance: ṅomie ụwa dị n'èzí, mebie ezi mgbagha n'okpuru ule.

Testability na AI

Enwere nzaghachi na-adọrọ mmasị: koodu nke siri ike ịnwale na-abụkarị koodu emebere nke ọma. Ọ bụrụ na AI nwere nsogbu ide ule na ọrụ (ọtụtụ ndabere, ọnọdụ ụwa zoro ezo, mmetụta ndị ọzọ), nke ahụ bụ isi ihe. Ịjụ AI "kedu ka ị ga-esi megharịa koodu a iji mee ka ọ bụrụ nke a na-anwale" na-eduga ma nnwale kacha mma yana koodu ka mma.

Nnwale dị iche iche na data dị iche iche

Ide ule dị iche iche oge ọ bụla iji nyochaa otu iwu na ntinye dị iche iche na-agwụ ike ma sie ike idowe. Nnwale parameterized - usoro nke na-agba otu mgbagha ule ugboro ugboro na ndepụta ntinye yana nsonaazụ a na-atụ anya ya - na-ewepụ ugboro ugboro a: otu ahụ nnwale na-enye ọtụtụ ụzọ ntinye ụzọ iri nri. AI na-arụ ọrụ nke ọma n'ịmepụta tebụl nsonaazụ ntinye a na-atụ anya mgbe ị na-enye ya iwu nnabata gị; Karịsịa, ọ na-ahazi n'usoro na-akọwapụta oke ụkpụrụ na klaasị nhata.

Mana enwere ọnyà ebe a: AI na-achọsi ike na-enweta nsonaazụ a tụrụ anya na tebụl emepụtara site na koodu a na-anwale. Njehie a dịkwa ize ndụ karịa n'ule nleba anya, n'ihi na otu mgbagha na-ezighi ezi na-emebi ọtụtụ ahịrị. Ya mere, na-agbakọ kọlụm nsonaazụ a na-atụ anya ya mgbe niile dịka iwu nnabata siri dị ma jiri aka kwado opekata mpe ahịrị ole na ole. Jụọkwa kọlụm nkọwa "gịnị ka ahịrị ọ bụla na-anọchi anya"; yabụ mgbe ahịrị gbajiri, ị ga-ahụ nke steeti agbajiri ozugbo.

Ndụmọdụ: kpachaara anya tinye “ahịrị ọnyà” na tebụl ule dị iche iche - ya bụ, ịma ụma dehie nsonaazụ ya. Ọ bụrụ na ahịrị ahụ agbanweghị ọbara ọbara mgbe ị na-eme ule ahụ, ule gị anaghị enyocha ọnọdụ ahụ n'ezie. Nke a bụ nlele ngafe ngafe ngwa ngwa.

Ngwa ngwa adịghị ike / Ike siri ike

Adịghị ike: "Dee otu nnwale maka ọrụ a."
Ike: Dee [asụsụ / Framework] unit ule maka "taxCalculate (ego, ọnụego) ọrụ. Nnabata iwu: N'ihi = ego * ọnụego, mechie na 2 decimals; na-ezighị ezi ego ma ọ bụ ọnụego na-atụfu njehie; laghachi 0 ma ọ bụrụ na ọnụego bụ 0. Jiri AAA Ọdịdị. Jiri aka gbakọọ ụkpụrụ ndị a na-atụ anya ya dị ka iwu ndị a dị ugbu a; emela ọrụ na-adịghị mma. buru ibu, gbaa gburugburu ruo nde iri).

Ike ngwa ngwa; Ọ na-enye iwu nnabata, atụmanya uru a na-atụ anya onwe ya, nhazi na ikpe ihu. Ya mere, ule na-aghọ onye nlekọta nke iwu, ọ bụghị enyo nke koodu.

Tebụlụ dị mma nke otu

akara

Nnwale ọjọọ ( ntụkwasị obi adịgboroja)

ezigbo ule

kwuputa

Ọ dịghị ma ọ bụ "ọ bụghị efu"

Ihe a tụrụ anya ya

Isi iyi uru a tụrụ anya ya

Mpụta nke ọrụ

Iwu nnabata / mgbako akwụkwọ ntuziaka

riri ahụ

Ezigbo DB/netwọk/hour

Ejikọtara ya na mock/stub

ihu ikpe

Naanị ụzọ obi ụtọ

oke, adịghị mma, njehie

Mgbe ị mebiri koodu

na-anọgide na-acha akwụkwọ ndụ akwụkwọ ndụ

na-atụgharị uhie

Aha

test1, usoro ule

na-akọwa iwu ọ kwadoro

Ndebiri anọ enwere ike iṅomi

1) Nnwale otu nke na-achịkwa iwu:

Ọrụ gị: senior software test engineer.Dee otu ule unit na ọrụ ndị a na [asụsụ/framework]: [mbinye aka].Iwu nnabata: [iwu].- Jiri AAA Ọdịdị.- Jiri aka gbakọọ ụkpụrụ ndị a tụrụ anya dị ka iwu ndị a si dị; AKWỤKWỌ KWESỊRỊ ihe nrụpụta ọrụ dị ugbu a. - Na-ekpuchi oke, adịghị mma, njehie na ụzọ obi ụtọ na ule dị iche iche. - Ka aha ule ọ bụla kọwaa iwu ọ na-enyocha. - ịkwa emo mpụga ndabere; Mee ka ezi uche na-arụ ọrụ.

2) njikwa nguzogide mgbanwe:

Lelee ule otu ndị a. Depụta obere tweaks 5 m nwere ike ịme na koodu n'okpuru ule (a - kama a +, a >= kama a >, mgbanwe oke) wee gwa m nke ọ bụla n'ime ule ndị a ga-acha uhie uhie? Ọ bụrụ na ọnweghị nke eweghachiri, ule ahụ ezughi oke. Koodu + ule: [mado]

3) Nlebanya ule:

Kedu ihe kpatara o ji esi ike dee otu nnwale maka ọrụ a? Ihe riri ahụ zoro ezo, ọnọdụ zuru ụwa ọnụ, mmetụta dị n'akụkụ, enwere ọtụtụ ọrụ? Tụnye ntugharị ntakịrị ka ọ bụrụ nke a na-anwale; agbanwela omume. Koodu: [mado]

4) Emecha ihe atụ na-ezughị ezu:

A na-enye ọrụ ndị a na ule dịnụ. Depụta akparamagwa/akpa ihu nke anwalebeghị (nha oke) wee tinye ule maka nke ọ bụla. Nnwale ọrụ+: [mado]

Obere ikpe atọ

Ikpe 1 - Nnwale mirroring koodu. Onye nrụpụta nwere AI dere ule maka ọrụ okirikiri; Nnwale iri bụ akwụkwọ ndụ akwụkwọ ndụ. N'ezie, ọrụ ahụ na-agbagharị n'ụzọ na-ezighị ezi, mana AI ewerewo ụkpụrụ ndị a tụrụ anya ya site na mmepụta ọrụ ahụ, ya mere ule ndị ahụ weere na njehie ahụ bụ "ezi". Mgbe ejiri aka jiri aka gbakọọ ụkpụrụ ndị a tụrụ anya ya site na ndebiri “iwu na-achị”, ule 4 tụgharịrị na-acha ọbara ọbara ma kpughee ezigbo njehie.

Ikpe 2 - Uru nke mutation akara. Otu otu dabere na ule nkeji iri anọ na ise. Nwale obere tweaks 20 na koodu ahụ yana "nleba anya ngbanwe ike"; Nlele a hụrụ naanị 11 n'ime ha. Ọgba aghara 9 fọdụrụnụ gafere na nzuzo. Otu ahụ mere ka ule na-adịghị ike sie ike; E jidere njehie mgbako n'ezie site na nnwale ndị a kwalitere na mwepụta na-esote.

Ikpe 3 — Untestability bụ a imewe isi. AI enweghị ike ide ule maka ọrụ ịtụ, ọ na-achọ ezigbo nchekwa data mgbe niile. Ihe ndebiri "nyocha ule" gosiri na ọrụ ahụ agbakwunyere ohere nchekwa data. Mgbe ewepụrụ ịgba ọgwụ mgbochi ahụ, enwere ike dee ule ma koodu ahụ wee dị ọcha.

Mmejọ ndị nkịtị

  • Nweta uru a tụrụ anya na koodu. AI na-anabata mmepụta ọrụ dị ka "ziri ezi"; nwale na-akwado koodu na-ezighi ezi.
  • Nwalee na-enweghị nkwuwa okwu ma ọ bụ jiri obere nkwuwa okwu. "Ọ tụghị njehie, ọ gafere" mgbagha; Ọ naghị akwado ihe ọ bụla.
  • Oke mkparị. Na-akwa emo ihe niile na-anwale naanị ihe ịkwa emo na-alaghachi; A naghị anwale ezi uche.
  • Naanị ụzọ obi ụtọ. Ịgafe oke, ọnọdụ ọjọọ na njehie.
  • Anaghị anwale site na imebi koodu. Ịtụkwasị obi akwụkwọ ndụ akwụkwọ ndụ na-enweghị ịlele maka mutation.
  • Na-eleghara enweghị atụ. N'ịghọta na idozi atụmatụ ọjọọ kama ịkwanye ule siri ike.

Na nchịkọta

Nnwale nke otu bụ oyi akwa kacha ọsọ na nke kachasị nke pyramid nnwale; Ọ na-ejide mmejọ ahụ n'oge dị ọnụ ala. AI nwere ike iwepụta ule otu, mana nnukwu ọnyà ya bụ ịde ule na-ewere omume na-ezighi ezi dị ka "zie ezi" site n'inweta uru a na-atụ anya na koodu ahụ n'onwe ya. Ngwọta: nye iwu nnabata, jiri aka gbakọọ ụkpụrụ ndị a na-atụ anya ya, mee ka ụkpụrụ AAA na nke mbụ, na-akwa emo n'èzí ma na-agba ọsọ n'ezie, ma nwalee ule ọ bụla site na mgbanwe (na-emebi koodu). Koodu siri ike ịnwale bụ akara imewe nke chọrọ ndozi.

Ọrụ ngwa

Họrọ ọrụ nwere iwu azụmahịa site na ọrụ nke gị. Dee iwu nnabata ma nwee AI na-eji template "nnwale otu iwu na-achịkwa" dee ule; Jiri aka gbakọọ ụkpụrụ ndị a tụrụ anya ya. Wee tinye “nleba anya ngbanwe siri ike”: mee opekata mpe obere ezumike 5 na koodu wee tụọ ule ole na-acha ọbara ọbara. Tinye ule ọhụrụ maka nrụrụ aka ejidebeghị. Kwuo ole ọgbaghara enwetara (dịka akara ngbanwe).

ndetu

  • [] Enyere m iwu nnabata ma jiri aka gbakọọ ụkpụrụ ndị a tụrụ anya ya.
  • [] Ahụrụ m n'aka na ule ndị ahụ enwetaghị uru a tụrụ anya na koodu ahụ.
  • [] E hiwela m nnwale onwe onye na-eso ntuziaka AAA na nke mbụ.
  • M kwara ndị na-adabere na mpụga emo ma na-agba ọsọ n'ezie ezi uche.
  • [] Ekpuchiri m oke, ikpe adịghị mma na njehie.
  • [] Site n'imebi koodu (mgbanwe) egosipụtara m na ule ndị a na-echebe n'ezie.