એકમો
1. ગેમ ડેવલપમેન્ટમાં આર્ટિફિશિયલ ઇન્ટેલિજન્સનો પરિચય: ભૂમિકાઓ, સીમાઓ, ચકાસણી, કૉપિરાઇટ અને નીતિશાસ્ત્ર 2. પ્રોટોટાઇપ અને મિકેનિકલ ડિઝાઇન: આઇડિયાથી પ્લે કરી શકાય તેવા કોર સુધી ઝડપી પુનરાવર્તન 3. NPC બિહેવિયર એન્ડ ડાયલોગ સિસ્ટમ્સ: આર્ટિફિશિયલ ઇન્ટેલિજન્સ જે પાત્રને જીવંત બનાવે છે 4. પ્રોસિજરલ કન્ટેન્ટ જનરેશન (PCG): લેવલ, મેપ, ક્વેસ્ટ અને નેરેટિવ 5. એસેટ અને વિઝ્યુઅલ પ્રોડક્શન: કન્સેપ્ટ આર્ટ, 2D/3D અને ટેક્સચર 6. ધ્વનિ, સંગીત અને અસરો ઉત્પાદન: ધ હર્ડ વર્લ્ડ ઓફ ધ ગેમ 7. કોડ જનરેશન અને એન્જિન એકીકરણ: યુનિટી (C#) અને અવાસ્તવિક (બ્લુપ્રિન્ટ/C++) 8. ગેમ બેલેન્સ, સિમ્યુલેશન અને ઇકોનોમી: અ ફેર ગેમ વિથ નંબર્સ 9. ગુણવત્તા ખાતરી (QA), ડીબગીંગ અને સ્વચાલિત પરીક્ષણ 10. કૉપિરાઇટ, મૌલિકતા, લાઇસન્સ અને નીતિશાસ્ત્ર: પ્રકાશિત અને જવાબદાર સામગ્રી 11. એન્ડ-ટુ-એન્ડ વર્કફ્લો, પ્રોડક્શન લાઇન ઇન્ટિગ્રેશન, ગવર્નન્સ અને લાઇવ સર્વિસ
એકમ 9 / 11

ગુણવત્તા ખાતરી (QA), ડીબગીંગ અને સ્વચાલિત પરીક્ષણ

નફો:

  • ફંક્શનલ, રીગ્રેસન, એજ કેસ અને ક્રેશ ટેસ્ટ લેયર્સને સમજવાની ક્ષમતા અને કૃત્રિમ બુદ્ધિમત્તા સાથે ટેસ્ટ દૃશ્યો અને એજ કેસ લિસ્ટ તૈયાર કરવાની ક્ષમતા
  • આર્ટિફિશિયલ ઇન્ટેલિજન્સ સાથે ઓટોમેટિક ટેસ્ટ કોડ લખીને અને લોગ અને ક્રેશ એનાલિસિસમાં પેટર્ન કાઢીને ડિબગિંગને વેગ આપવાની ક્ષમતા
  • કૃત્રિમ બુદ્ધિનું ભૂલ નિદાન એ પુરાવા નથી પરંતુ પૂર્વધારણા છે તે સમજવામાં સક્ષમ હોવાને કારણે, કારણ લોગ અને પ્રજનન સાથે સાબિત થવું જોઈએ, અને ભૂલ અહેવાલ પુનઃઉત્પાદન કરી શકાય તેવું મહત્વ છે.

જ્યારે કોઈ ગેમ રિલીઝ થાય છે, ત્યારે ખેલાડીઓ તેને એવી રીતે રમે છે જે વિકાસકર્તાએ કલ્પના કરી ન હતી: દિવાલોમાં અટવાઈ જવું, ઇન્વેન્ટરીનું શોષણ કરવું, અશક્ય સ્થળોએ પહોંચવું, ક્રેશને ટ્રિગર કરવું. ગુણવત્તા ખાતરી (QA - ગુણવત્તા ખાતરી); તે રીલીઝ પહેલા રમતનું વ્યવસ્થિત પરીક્ષણ કરવાની અને ભૂલો (બગ્સ), ક્રેશ, અસ્થિરતા અને ખરાબ અનુભવોને શોધવા અને સુધારવાની પ્રક્રિયા છે. આ રમત ઉત્પાદનમાં સૌથી વધુ શ્રમ-સઘન પરંતુ નિર્ણાયક કડીઓમાંની એક છે. AI ઘણા બધા મુદ્દાઓ પર QA ને વેગ આપે છે: ટેસ્ટ કેસ જનરેશન, બગ રિપોર્ટ વિશ્લેષણ, લોગ રિવ્યૂ, ઓટોમેટિક ટેસ્ટ કોડ રાઇટિંગ, ડિબગિંગ અને રિફાઇનિંગ પ્રોડક્શન સ્ટેપ્સ. પરંતુ AI માનવ પરીક્ષકની અંતર્જ્ઞાન અને રમતની લાગણીના મૂલ્યાંકનને બદલતું નથી.

આ યુનિટમાં તમે QA અને ડિબગીંગમાં AI નો ઉપયોગ કેવી રીતે કરવો તે શીખી શકશો; તમે પરીક્ષણ દૃશ્ય ડિઝાઇન, લોગ વિશ્લેષણ, સ્વચાલિત પરીક્ષણ લેખન અને ભૂલ રિપોર્ટિંગ શિસ્ત શીખી શકશો.

QA ના સ્તરો અને AI નું સ્થાન

QA બહુ-સ્તરીય છે. કાર્યાત્મક પરીક્ષણ: શું લક્ષણ કાર્ય કરે છે (શું દરવાજો ખુલે છે, રેકોર્ડિંગ લોડ કરે છે). રીગ્રેસન પરીક્ષણ: શું નવો ફેરફાર પહેલા જે કામ કરતું હતું તે તોડ્યું? એજ કેસ ટેસ્ટિંગ: અસામાન્ય ઇનપુટ્સ (ઇવેન્ટરી રીસેટ કરો, એક સાથે બે કી, બોર્ડરલાઇન મૂલ્યો). પ્રદર્શન/ક્રેશ પરીક્ષણ: રમત સ્થિર છે. ગેમપ્લે/અનુભવ કસોટી: મજા, સાહજિક. AI પ્રથમ ચારમાં મજબૂત છે: દૃશ્યો જનરેટ કરવા, એજ કેસોની યાદી, ટેસ્ટ કોડ લખવા, લૉગ્સનું વિશ્લેષણ કરવું. છેલ્લો-અનુભવ માણસનો છે.

QA ફ્લો સ્ટેપ બાય સ્ટેપ:

  1. ટેસ્ટ કેસ જનરેટ કરો (એઆઈ સાથે કાર્યાત્મક અને ધાર કેસની સૂચિ).
  2. સ્વચાલિત પરીક્ષણ લખો (પુનરાવર્તિત તપાસ માટે કોડ).
  3. ચલાવો અને એકત્રિત કરો (લોગ ભૂલો, લોગ્સ, ક્રેશ).
  4. વિશ્લેષણ કરો (એઆઈ સાથે લોગ અને એરર પેટર્નની તપાસ કરો).
  5. જાણ કરો અને ચકાસો (સ્પષ્ટ, પુનઃઉત્પાદનક્ષમ બગ રિપોર્ટ; ટેસ્ટ ફિક્સ).
સંકેત: એજ કેસ શોધવા મુશ્કેલ છે કારણ કે ડિઝાઇનર તેની રમત "જમણે" રમે છે. AI ને પૂછો "જો કોઈ ખેલાડી આ સિસ્ટમને તોડવા માંગતો હોય તો શું પ્રયાસ કરશે?" શોષણ અને ધાર કેસોની સૂચિ બનાવો.

સ્વચાલિત પરીક્ષણ: મશીન પર પુનરાવર્તન છોડો

દરેક પ્રકાશનમાં સમાન વસ્તુઓનું મેન્યુઅલી પરીક્ષણ કરવું કંટાળાજનક અને ભૂલથી ભરેલું છે. સ્વયંસંચાલિત પરીક્ષણ આ ચેકને કોડમાં મૂકે છે: શું ફંક્શન દર વખતે તેને કૉલ કરવામાં આવે ત્યારે સાચું પરિણામ આપે છે, તે અપેક્ષિત સ્થિતિમાં સિસ્ટમ છે. યુનિટી અને અવાસ્તવિક ઓફર પરીક્ષણ ફ્રેમવર્ક; AI આ પરીક્ષણો લખવામાં ઝડપી છે. તે રીગ્રેસન માટે ખાસ કરીને મૂલ્યવાન છે: જો કોઈ ફેરફાર કોઈ એવી વસ્તુને તોડે છે જે પહેલા કામ કરતું હતું, તો પરીક્ષણ લાલ થઈ જાય છે. AI દ્વારા ઉત્પાદિત પરીક્ષણોની સમીક્ષા કરો, ખાતરી કરો કે તેઓ ખરેખર અર્થપૂર્ણ શું છે તે માટે તપાસ કરે છે - એક ખાલી પરીક્ષણ કોઈ પરીક્ષણ કરતાં વધુ ખરાબ છે.

સાવધાન: ડીબગીંગમાં, AI કેટલીકવાર "સંભવિત કારણ" (આભાસ) તરીકે બનાવેલ સમજૂતી પેદા કરે છે. બગનું કારણ સ્વીકારશો નહીં કારણ કે AI એ તમને આમ કહ્યું છે; લોગીંગ, પુનઃઉત્પાદન અને પરીક્ષણ દ્વારા કારણ સાબિત કરો. ખોટું નિદાન યોગ્ય નિદાન કરવામાં વિલંબ કરે છે.

પ્રજનન: ડીબગીંગનું હૃદય

બગને ઠીક કરવાની પ્રથમ આવશ્યકતા તેને વિશ્વસનીય રીતે પુનઃઉત્પાદન કરવાની છે. "ક્યારેક થાય છે" તરીકે વર્ણવેલ ભૂલ સુધારી શકાતી નથી કારણ કે તમે ચકાસી શકતા નથી કે ફિક્સ કામ કરે છે કે કેમ. તેથી ડિબગીંગનું સૌથી મૂલ્યવાન કાર્ય એ ચોક્કસ પરિસ્થિતિઓને સંકુચિત કરવાનું છે કે જેમાં બગ થાય છે (કયા પગલાં, કઈ પરિસ્થિતિ, કયો સમય). AI આને સંકુચિત કરવામાં મદદ કરે છે: તમે લક્ષણો અને આંશિક પ્રજનન પગલાં આપી શકો છો અને કહી શકો છો "સ્થિતિઓ અને સંકુચિત વ્યૂહરચના સૂચવે છે જે આ વર્તનને ટ્રિગર કરી શકે છે." પરંતુ તમે ખરેખર રમત ચલાવીને સંકુચિત કરો છો; AI પૂર્વધારણાઓ જનરેટ કરે છે, તમે તેને દૂર કરો છો.

ખાસ કરીને સમય-સંબંધિત (રેસની સ્થિતિ) અને મેમરી સ્ટેટ-સંબંધિત ભૂલો કપટી છે; આ ફક્ત ચોક્કસ ક્રમ અથવા ભારમાં થાય છે. આવી ભૂલો માટે, લોગમાં ટાઇમસ્ટેમ્પ અને સ્થિતિની માહિતી ઉમેરવી મહત્વપૂર્ણ છે; AI આ સમૃદ્ધ લોગનું વિશ્લેષણ કરી શકે છે અને પેટર્ન જોઈ શકે છે ("ભૂલ હંમેશા ત્યારે થાય છે જ્યારે આ બે ઘટનાઓ તાજેતરમાં થાય છે"). ડિબગીંગનો સુવર્ણ નિયમ યાદ રાખો: પહેલા સમજો, પછી ઠીક કરો. સમજ્યા વિના કરેક્શન ભૂલને છુપાવે છે પરંતુ તેને હલ કરતું નથી અને ઘણી વખત અન્ય જગ્યાએ નવી ભૂલ ઊભી કરે છે.

ત્રણ નાના કેસો

કેસ 1 - એજ કેસ શિકાર. એક RPG માં, ટીમે "સામાન્ય" ગેમપ્લેમાં ઇન્વેન્ટરી સિસ્ટમનું પરીક્ષણ કર્યું અને વિચાર્યું કે તે નક્કર છે. તેઓએ AI કહ્યું હતું કે "આ ઇન્વેન્ટરીને તોડવાનો પ્રયાસ કરો" અને 30 એજ કેસ દૃશ્યો જનરેટ કર્યા; આમાંથી 4 સાચી ભૂલો હતી (0 વજનની વસ્તુનું વિભાજન, એકસાથે નિકાલજોગ). પ્રકાશન પહેલાં સુધારેલ.

કેસ 2 — લોગ એનાલિસિસે ક્રેશનું નિરાકરણ કર્યું. એક રમત અવ્યવસ્થિત રીતે તૂટી રહી હતી; ક્રેશ લોગ સેંકડો લાઇનના હતા. જ્યારે AI ને લોગ્સ આપવામાં આવ્યા અને પેટર્ન માટે પૂછવામાં આવ્યું, ત્યારે તે બહાર આવ્યું કે ક્રેશ હંમેશા ચોક્કસ દ્રશ્ય સંક્રમણ અને ઓછી મેમરી પર થાય છે. આ ચાવી સાથે, પ્રોગ્રામરને મેમરી લીક મળી; ક્રેશ રેટ ઘટીને શૂન્ય થઈ ગયો.

કેસ 3 — ખોટા નિદાનમાંથી પાછા ફરો. એક પ્રોગ્રામરે AI ના ખુલાસા પર વિશ્વાસ કર્યો કે "આ ભૂલ આ કાર્યને કારણે છે" અને અડધા દિવસ સુધી તેની સાથે ટિંકર કર્યું; કોઈ પરિણામ આવ્યું નથી. જ્યારે તેણે સ્પષ્ટતા કરી અને ફરીથી ઉત્પાદન પગલાં લોગ કર્યા, ત્યારે ભૂલ સંપૂર્ણપણે અલગ જગ્યાએ હતી. પાઠ: AI નું નિદાન એ પૂર્વધારણા છે, સાબિતી નથી.

ચાર નકલ કરી શકાય તેવા નમૂનાઓ

1) એજ કેસ/શોષણ દૃશ્ય જનરેશન:

તમારી ભૂમિકા: દૂષિત QA ટેસ્ટર. હું નીચેની સિસ્ટમનું વર્ણન કરું છું: [સિસ્ટમ, નિયમો]. કાર્ય: 20 એજ કેસ દૃશ્યોની સૂચિ બનાવો જે આ સિસ્ટમને તોડવાનો, શોષણ કરવાનો અથવા અણધારી સ્થિતિમાં ફેંકવાનો પ્રયાસ કરશે. દરેક માટે: શું પ્રયાસ કરવો, અપેક્ષિત પરિણામ, સંભવિત ભૂલ.

2) સ્વચાલિત પરીક્ષણ લેખન:

એન્જિન: [યુનિટી 2022.3 / અવાસ્તવિક 5.3]. પરીક્ષણ માળખું: [સ્પષ્ટ કરો].નીચેના કાર્ય/સિસ્ટમ માટે સ્વચાલિત પરીક્ષણો લખો: [વર્ણન/કોડ].સામાન્ય કેસ, મર્યાદા કેસ અને ખામીયુક્ત ઇનપુટ શામેલ કરો. ખાતરી કરો કે દરેક પરીક્ષણ ખરેખર અર્થપૂર્ણ કંઈક ચકાસે છે; ખાલી/અર્થહીન પરીક્ષણો લખવા.

3) લોગ/ક્રેશ વિશ્લેષણ:

નીચે રમતના ક્રેશ/એરર લોગ્સ છે: [લોગ]. કાર્ય: રિકરિંગ પેટર્ન, સામાન્ય પરિસ્થિતિઓ (દ્રશ્ય, મેમરી, સમય), અને સંભવિત મૂળ કારણોને ચિહ્નિત કરો. દરેક કારણને "સાબિત થવાની પૂર્વધારણા" તરીકે રજૂ કરો; સ્પષ્ટ બોલો. કેવી રીતે ચકાસવું તે પણ મને કહો.

4) બગ રિપોર્ટ સ્પષ્ટતા:

નીચેના અસ્પષ્ટ ભૂલ અહેવાલને સ્પષ્ટ અને પુનઃઉત્પાદનયોગ્ય બનાવો: [કાચો અહેવાલ]. આઉટપુટ: શીર્ષક, પગલું દ્વારા પગલું પ્રજનન, અપેક્ષિત પરિણામ, વાસ્તવિક પરિણામ, આવર્તન, પર્યાવરણ. જો ત્યાં માહિતી ખૂટે છે, તો કઈ માહિતીની જરૂર છે તેની સૂચિ બનાવો.

નબળા પ્રોમ્પ્ટ / મજબૂત પ્રોમ્પ્ટ

નબળા પ્રોમ્પ્ટ:

મારી રમતમાં એક ભૂલ છે, તેને ઠીક કરો.

કોઈ સંદર્ભ નથી, કોઈ લોગ નથી, કોઈ પ્રજનન નથી; AI અનુમાનિત છે અને આભાસનું જોખમ ઊંચું છે.

શક્તિશાળી પ્રોમ્પ્ટ:

મારી યુનિટી 2022.3 ગેમમાં એક બગ છે: જ્યારે ખેલાડી ઝડપી સેવ-લોડ કરે છે ત્યારે ઈન્વેન્ટરી ક્યારેક બમણી થઈ જાય છે. પ્રજનન: [પગલાં].સંબંધિત કોડ: [પેસ્ટ]. લોગ: [પેસ્ટ કરો].કાર્ય: સાબિત થવા માટે પૂર્વધારણાઓ તરીકે સંભવિત મૂળ કારણોની સૂચિ બનાવો, દરેક માટે કેવી રીતે ચકાસવું અને શક્ય ઠીક કરવું તે આપો. અસ્તિત્વમાં નથી તેવું કારણ બનાવો; જો તમને ખાતરી ન હોય, તો મને જણાવો.

પ્રજનન, કોડ, લોગ અને "પૂર્વધારણા તરીકે પ્રસ્તુત કરો" વિનંતી નિદાનને વિશ્વસનીય બનાવે છે.

QA સ્તર કોષ્ટક

સ્તર

તે શું પરીક્ષણ કરે છે?

AI યોગદાન

માનવ શેર

કાર્યાત્મક

શું લક્ષણ કામ કરે છે?

સ્ક્રિપ્ટ, ટેસ્ટ કોડ

પ્રવેશ નિર્ણય

રીગ્રેશન

શું જૂની વસ્તુ તૂટી ગઈ છે?

સ્વચાલિત પરીક્ષણ

અવકાશ નિર્ણય

આત્યંતિક કેસ

અસામાન્ય ઇનપુટ

સ્ક્રિપ્ટ ઉત્પાદન

અગ્રતા

ક્રેશ/પ્રદર્શન

નિશ્ચય

લોગ વિશ્લેષણ

મૂળ કારણ પુષ્ટિ

અનુભવ

મનોરંજન, અંતર્જ્ઞાન

મર્યાદિત

સંપૂર્ણપણે માનવ

સામાન્ય ભૂલો

  • ફક્ત "સામાન્ય" ગેમપ્લેનું પરીક્ષણ કરી રહ્યું છે. એજ કેસો પ્રકાશન પછી ફૂટે છે.
  • પુરાવા તરીકે AI નિદાનને ભૂલવું. શા માટે લોગ અને પરીક્ષણ દ્વારા સાબિત થાય છે.
  • ખાલી સ્વચાલિત પરીક્ષણો લખવા. અર્થહીન પરીક્ષણ આત્મવિશ્વાસનો ભ્રમ આપે છે.
  • અસ્પષ્ટ બગ રિપોર્ટ. બિન-પ્રજનનક્ષમ ભૂલ સુધારી શકાતી નથી.
  • રીગ્રેસન પરીક્ષણ છોડવું. દરેક કરેક્શન નવી ભૂલોનું કારણ બની શકે છે.

સારાંશમાં

QA એ શિસ્ત છે જે ખેલાડી માટે રમતને તૈયાર કરે છે. AI; એજ કેસ દૃશ્યો જનરેટ કરે છે, સ્વયંસંચાલિત પરીક્ષણો લખે છે, લોગનું વિશ્લેષણ કરે છે અને ભૂલ અહેવાલોને સ્પષ્ટ કરે છે. પરંતુ તેમના નિદાન પૂર્વધારણાઓ છે, અનુભવનું મૂલ્યાંકન માનવીય છે, અને દરેક સુધારણા માટે ફરીથી પરીક્ષણની જરૂર છે. AI સાથે "કોણ આ અને કેવી રીતે તોડી શકે છે" રીફ્લેક્સની નકલ કરો; તમે પુરાવા એકત્રિત કરો.

એપ્લિકેશન કાર્ય

તમારી રમતમાંથી સિસ્ટમ પસંદ કરો. "એજ કેસ/શોષણ દૃશ્ય જનરેશન" ટેમ્પલેટ સાથે 20 દૃશ્યો જનરેટ કરો અને ખરેખર 5 જોખમીનું પરીક્ષણ કરો. "બગ રિપોર્ટ રિફાઇનમેન્ટ" ટેમ્પલેટ સાથે તમને મળેલી બગ માટે પુનઃઉત્પાદન કરી શકાય તેવી રિપોર્ટ બનાવો.

ચેકલિસ્ટ

  • [ ] મેં "આને કોણ અને કેવી રીતે તોડી શકે?" સાથે એક ધાર કેસ બનાવ્યો.
  • [ ] રિકરિંગ ચેક્સ માટે સ્વચાલિત પરીક્ષણ લખ્યું અને સમીક્ષા કરી.
  • [ ] મેં AI નિદાનને એક પૂર્વધારણા તરીકે ગણી અને તેને લોગ/ટેસ્ટ વડે સાબિત કર્યું.
  • [ ] મેં પ્રજનનક્ષમ રીતે ભૂલોની જાણ કરી.
  • [ ] મેં રીગ્રેસન માટે દરેક ફિક્સનું ફરીથી પરીક્ષણ કર્યું.