TestMace ፈጣን ጅምር

TestMace ፈጣን ጅምር

ሰላም ሁላችሁም። ቀስ በቀስ ከጥላዎች እየወጣን እና ስለ ምርታችን ተከታታይ መጣጥፎችን እንቀጥላለን። በኋላ ቀዳሚ የክለሳ መጣጥፍ፣ ብዙ ግብረመልስ ተቀብለናል (በአብዛኛው አወንታዊ)፣ ጥቆማዎች እና የሳንካ ሪፖርቶች። ዛሬ እናሳያለን TestMace በተግባር እና አንዳንድ የመተግበሪያችንን ባህሪያት ማድነቅ ይችላሉ. ለበለጠ የተሟላ ጥምቀት፣ ሰነዶቻችንን በ ላይ እንዲመለከቱ እመክርዎታለሁ። http://docs-ru.testmace.com. ስለዚህ እንሂድ!

ቅንብር

በእገዳው እንጀምር። አፕሊኬሽኑ በሦስት መድረኮች ላይ ይገኛል እና ተፈትኗል - ሊኑክስ ፣ ዊንዶውስ ፣ ማክኦኤስ። ጫኚውን ለሚፈልጉት ስርዓተ ክወና ማውረድ ይችላሉ። የእኛ ድረ-ገጽ. ለሊኑክስ ተጠቃሚዎች መጫን ይቻላል ጥቅል ጥቅል. ማይክሮሶፍት ስቶር እና አፕ ስቶር በቅርቡ ወደ እሱ እንደሚመጡ በእውነት ተስፋ እናደርጋለን (አስፈላጊ ነው? ምን ይመስላችኋል?)።

የሙከራ ሁኔታ

እንደ የሙከራ ርዕሰ ጉዳይ የሚከተለውን መደበኛ ሁኔታ መርጠናል፡-

  • መግቢያ: ተጠቃሚ - አስተዳዳሪ, የይለፍ ቃል - የይለፍ ቃል
  • አዲስ ግቤት ጨምር
  • መዝገቡ በትክክል መጨመሩን እንፈትሽ

ላይ እንፈትሻለን። https://testmace-quick-start.herokuapp.com/. ይህ የተለመደ ነው። json-አገልጋይ, እንደዚህ አይነት መተግበሪያዎችን ለመሞከር ፍጹም ነው. ፈቃድን በቶከን ወደ ሁሉም json-አገልጋይ መስመሮች ጨምረናል እና ይህን ማስመሰያ ለመቀበል የመግቢያ ዘዴ ፈጠርን። ፕሮጀክታችንን ቀስ በቀስ እያሻሻልን በሂደት እንጓዛለን።

ፕሮጀክት መፍጠር እና ያለፈቃድ አካል ለመፍጠር መሞከር

በመጀመሪያ ፣ አዲስ ፕሮጀክት እንፍጠር (ፋይል->አዲስ ፕሮጀክት). አፕሊኬሽኑን ለመጀመሪያ ጊዜ ካስጀመሩት አዲስ ፕሮጀክት በራስ ሰር ይከፈታል። በመጀመሪያ፣ አዲስ መዝገብ ለመፍጠር ጥያቄ ለማቅረብ እንሞክር (መዝገቦችን መፍጠር ያለፍቃድ የሚገኝ ከሆነ)። ከፕሮጀክት መስቀለኛ መንገድ አውድ ምናሌ ንጥሎችን ይምረጡ መስቀለኛ መንገድ ጨምር -> የጥያቄ እርምጃ. የአንጓውን ስም ያዘጋጁ መፍጠር-መለጠፍ. በውጤቱም, በዛፉ ውስጥ አዲስ መስቀለኛ መንገድ ይፈጠራል እና የዚህ መስቀለኛ መንገድ ትር ይከፈታል. የሚከተሉትን የጥያቄ መለኪያዎችን እናስቀምጥ፡-

  • የጥያቄ አይነት፡ POST
  • url: https://testmace-quick-start.herokuapp.com/posts
  • አካል ይጠይቁ፡ json ከዋጋ ጋር {"title": "New testmace quick start post"}
    ሁሉንም ነገር በትክክል ካደረጉት, በይነገጹ ይህን ይመስላል:

TestMace ፈጣን ጅምር

ነገር ግን፣ ጥያቄውን ለማሟላት ከሞከርን አገልጋዩ 401 ኮድ ይመልሳል እና ያለፈቃድ በዚህ አገልጋይ ላይ ምንም ነገር አናገኝም። ደህና, በአጠቃላይ, እንደተጠበቀው).

የፍቃድ ጥያቄ በማከል ላይ

ቀደም ሲል እንደተናገረው፣ የPOST የመጨረሻ ነጥብ አለን። /loginjsonን እንደ የቅጹ ጥያቄ አካል የሚወስደው፡- {"username": "<username>", "password": "<password>"}የት username и password (እንደገና, ከላይ ካለው የመግቢያ አንቀጽ) ትርጉም አላቸው admin и password በቅደም ተከተል. በምላሹ፣ ይህ የመጨረሻ ነጥብ jsonን ይመልሳል {"token": "<token>"}. ለፍቃድ እንጠቀምበታለን። እንፍጠር የጥያቄ እርምጃ ስም ያለው መስቀለኛ መንገድ የመግቢያ ገጽ፣ እንደ ቅድመ አያት ይሠራል ፕሮጀክት መስቀለኛ መንገድ በመጎተት እና በመጣል በመጠቀም የተሰጠውን መስቀለኛ መንገድ በዛፉ ውስጥ ከኖድ በላይ ያንቀሳቅሱ መፍጠር-መለጠፍ. አዲስ ለተፈጠረው ጥያቄ የሚከተሉትን መለኪያዎች እናዘጋጅ፡-

ጥያቄውን እናስፈጽም እና በምላሹ ውስጥ ካለው ማስመሰያ ጋር ሁለት መቶኛ ኮድ እንቀበል። እንደዚህ ያለ ነገር፡-

TestMace ፈጣን ጅምር

ማደስ፡ የጎራ ብዜት ማስወገድ

እስካሁን ድረስ ጥያቄዎቹ ከአንድ ስክሪፕት ጋር አልተገናኙም። ግን ይህ ብቸኛው ጉድለት አይደለም. በቅርበት ከተመለከቱ፣ ቢያንስ ጎራው በሁለቱም ጥያቄዎች የተባዛ መሆኑን ያስተውላሉ። ጥሩ አይደለም. ይህንን የወደፊቱን የስክሪፕት ክፍል እንደገና ለማደስ ጊዜው አሁን ነው, እና ተለዋዋጮች በዚህ ላይ ይረዱናል.

ለመጀመሪያው ግምት ፣ተለዋዋጮች ከሌሎች ተመሳሳይ መሳሪያዎች እና የፕሮግራም ቋንቋዎች ጋር ተመሳሳይ ሚና ያገለግላሉ - ማባዛትን ያስወግዳል ፣ ተነባቢነትን ይጨምራል ፣ ወዘተ. በ ውስጥ ስለ ተለዋዋጮች የበለጠ ማንበብ ይችላሉ። የእኛ ሰነዶች. በዚህ አጋጣሚ የተጠቃሚ ተለዋዋጮች ያስፈልጉናል።

በፕሮጀክት መስቀለኛ መንገድ ላይ ያለውን ተለዋዋጭ እንግለጽ domain ትርጉም ያለው https://testmace-quick-start.herokuapp.com. ለዚህም አስፈላጊ ነው

  • በዚህ መስቀለኛ መንገድ ትሩን ይክፈቱ እና ከላይ በቀኝ በኩል ባለው የሂሳብ ማሽን አዶ ላይ ጠቅ ያድርጉ
  • ላይ ጠቅ ያድርጉ + ተለዋዋጭ ጨምር
  • ተለዋዋጭ ስም እና እሴት ያስገቡ
    በእኛ ሁኔታ፣ ከተጨመረው ተለዋዋጭ ጋር ያለው ንግግር ይህን ይመስላል።

TestMace ፈጣን ጅምር

እሺ አሁን፣ በውርስ ምክንያት፣ ይህንን ተለዋዋጭ በማንኛውም የጎጆ ደረጃ ዘሮች ውስጥ ልንጠቀምበት እንችላለን። በእኛ ሁኔታ እነዚህ አንጓዎች ናቸው የመግቢያ ገጽ и መፍጠር-መለጠፍ. በጽሑፍ መስክ ውስጥ ተለዋዋጭ ለመጠቀም, መጻፍ ያስፈልግዎታል ${<variable_name>}. ለምሳሌ፣ የመግቢያ ዩአርኤል ወደ ተቀይሯል። ${domain}/login, በቅደም ተከተል ለ መፍጠር-መለጠፍ node url ይመስላል ${domain}/posts.

ስለዚህ፣ በDRY መርህ እየተመራን፣ ሁኔታውን በትንሹ አሻሽለነዋል።

ማስመሰያውን ወደ ተለዋዋጭ ያስቀምጡ

እየተነጋገርን ያለነው ስለ ተለዋዋጮች ስለሆነ፣ በዚህ ርዕስ ላይ ትንሽ እናሰፋ። በአሁኑ ጊዜ ፣ ​​በተሳካ ሁኔታ የመግባት ሁኔታ ፣ ከአገልጋዩ የፍቃድ ማስመሰያ እንቀበላለን ፣ ይህም በሚቀጥሉት ጥያቄዎች ውስጥ እንፈልጋለን። ይህንን ማስመሰያ በተለዋዋጭ ውስጥ እናስቀምጥ። ምክንያቱም በስክሪፕት አፈፃፀም ወቅት የተለዋዋጭው እሴት ይወሰናል ፣ ለዚህ ​​ልዩ ዘዴን እንጠቀማለን - ተለዋዋጭ ተለዋዋጮች.

በመጀመሪያ የመግቢያ ጥያቄን እናከናውን። በትሩ ውስጥ ተተንትኗል መልስ ፣ ጠቋሚውን በቶክ ላይ ያንቀሳቅሱ እና በአውድ ምናሌው ውስጥ (በቀኝ መዳፊት ቁልፍ ወይም ቁልፉን ጠቅ በማድረግ ...) ንጥሉን ይምረጡ። ለተለዋዋጭ መድብ. ከሚከተሉት መስኮች ጋር አንድ ንግግር ይመጣል።

  • ዱካ - የትኛው የመልሱ ክፍል ይወሰዳል (በእኛ ሁኔታ body.token)
  • የአሁኑ ዋጋ - በመንገዱ ላይ ምን ዋጋ አለ (በእኛ ሁኔታ ይህ የማስመሰያ እሴት ነው)
  • ተለዋጭ ስም - የተለዋዋጭ ስም የት የአሁኑ ዋጋ ይጠበቃል። በእኛ ሁኔታ ውስጥ ይሆናል token
  • አንጓ - በየትኞቹ ቅድመ አያቶች ውስጥ ተለዋዋጭው ይፈጠራል ተለዋጭ ስም. ፕሮጀክት እንምረጥ

የተጠናቀቀው ንግግር ይህን ይመስላል።

TestMace ፈጣን ጅምር

አሁን መስቀለኛ መንገድ በተሰራ ቁጥር የመግቢያ ገጽ ተለዋዋጭ ተለዋዋጭ token ከምላሹ ከአዲሱ እሴት ጋር ይዘምናል. እና ይህ ተለዋዋጭ በውስጡ ይከማቻል ፕሮጀክት መስቀለኛ መንገድ እና ለውርስ ምስጋና ይግባውና ለዘሮችም ይገኛል።

ተለዋዋጭ ተለዋዋጮችን ለመድረስ፣ መጠቀም አለቦት አብሮ የተሰራ ተለዋዋጭ $dynamicVar. ለምሳሌ፣ የተከማቸ ቶከንን ለመድረስ መደወል ያስፈልግዎታል ${$dynamicVar.token}.

የፍቃድ ማስመሰያውን ወደ ጥያቄዎች እናስተላልፋለን።

በቀደሙት ደረጃዎች የፍቃድ ማስመሰያ ተቀብለናል እና እኛ ማድረግ ያለብን ራስጌ ማከል ብቻ ነው። Authorization ትርጉም ያለው Bearer <tokenValue> ጨምሮ ፍቃድ በሚጠይቁ ሁሉም ጥያቄዎች መፍጠር-መለጠፍ. ይህንን ለማድረግ በርካታ መንገዶች አሉ-

  1. ማስመሰያውን በእጅ ይቅዱ እና የፍላጎት ጥያቄዎች ላይ የፍቃድ ርዕስ ያክሉ። ዘዴው ይሰራል, ነገር ግን አጠቃቀሙ "የተሰራ እና የተጣለ" አይነት ጥያቄዎች ላይ ብቻ የተገደበ ነው. ለስክሪፕቶች ተደጋጋሚ አፈፃፀም ተስማሚ አይደለም።
  2. ተግባራዊነቱን ተጠቀም ፈቃድ መስጠት.
  3. ተጠቀም ነባሪ ራስጌዎች

ሁለተኛውን ዘዴ መጠቀም ግልጽ ይመስላል, ነገር ግን በዚህ ጽሑፍ አውድ ውስጥ, ይህ አካሄድ ... ፍላጎት የለውም. ደህና፣ የምር፡ የፈቃድ ስልቱ ሲደመር ሲቀነስ ከሌሎች መሳሪያዎች ታውቀዋለህ (እንዲህ ያሉ ነገሮች ብንሆንም እንኳ የፍቃድ ውርስ) እና ጥያቄዎችን ማንሳት አይቀርም።

ሌላው ነገር ነባሪ ራስጌዎች ነው! በአጭሩ፣ ነባሪ ራስጌዎች በግልጽ ካልተሰናከሉ በቀር በነባሪነት ወደ ጥያቄው የሚጨመሩ የኤችቲቲፒ ራስጌዎች የተወረሱ ናቸው። ይህንን ተግባር በመጠቀም፣ ለምሳሌ ብጁ ፍቃድን መተግበር ወይም በቀላሉ በስክሪፕቶች ውስጥ ብዜትን ማስወገድ ይችላሉ። በራስጌዎች ውስጥ ማስመሰያ ለማስተላለፍ ይህንን ባህሪ እንጠቀምበት።

ከዚህ ቀደም ማስመሰያውን በጥንቃቄ ወደ ተለዋዋጭ ተለዋዋጭ አስቀምጠነዋል $dynamicVar.token በፕሮጀክት መስቀለኛ መንገድ. የሚቀረው የሚከተሉትን ማድረግ ብቻ ነው።

  1. ነባሪ ርእስ ይግለጹ Authorization ትርጉም ያለው Bearer ${$dynamicVar.token} በፕሮጀክት መስቀለኛ መንገድ. ይህንን ለማድረግ በመስቀለኛ መንገድ የፕሮጀክት በይነገጽ ውስጥ ከነባሪ አርዕስቶች (አዝራር) ጋር አንድ ንግግር መክፈት ያስፈልግዎታል ራስጌዎች በላይኛው ቀኝ ጥግ ላይ) እና ተዛማጅ ርዕስ ያክሉ. ከተሞሉ እሴቶች ጋር ያለው ንግግር ይህን ይመስላል።
    TestMace ፈጣን ጅምር
  2. ይህን ራስጌ ከመግቢያ ጥያቄ ያሰናክሉ። ይህ ለመረዳት የሚቻል ነው: በመግቢያ ጊዜ, ቶከን ገና የለንም እና በዚህ ጥያቄ እንጭነዋለን. ስለዚህ, በትሩ ውስጥ ባለው ጥያቄ የመግቢያ በይነገጽ ውስጥ ራስጌዎችውርስ የፈቃድ ራስጌውን ምልክት ያንሱ።

ይኼው ነው. አሁን የፍቃድ ራስጌው ከመግቢያ መስቀለኛ መንገድ በስተቀር ሁሉም የፕሮጀክት መስቀለኛ መንገድ ልጆች ለሆኑ ጥያቄዎች ይታከላል። በዚህ ደረጃ ላይ አስቀድሞ የተዘጋጀ ስክሪፕት አለን እና እኛ ማድረግ ያለብን እሱን ማስጀመር ብቻ ነው። በመምረጥ ስክሪፕቱን ማሄድ ይችላሉ። ሩጫ በፕሮጀክት መስቀለኛ መንገድ አውድ ምናሌ ውስጥ።

የልጥፍ ፈጠራን ትክክለኛነት ማረጋገጥ

በዚህ ደረጃ፣ የእኛ ስክሪፕት መግባት እና የፍቃድ ማስመሰያ በመጠቀም ልጥፍ መፍጠር ይችላል። ሆኖም ግን፣ አዲስ የተፈጠረው ልጥፍ ትክክለኛ ስም እንዳለው ማረጋገጥ አለብን። ማለትም፣ በመሰረቱ፣ የሚቀረው የሚከተሉትን ማድረግ ብቻ ነው።

  • በመታወቂያ ልጥፍ ለመቀበል ጥያቄ ይላኩ ፣
  • ልጥፉን በሚፈጥሩበት ጊዜ ከአገልጋዩ የተቀበለው ስም ከተላከው ስም ጋር እንደሚዛመድ ያረጋግጡ

የመጀመሪያውን ደረጃ እንይ. የመታወቂያው ዋጋ የሚወሰነው በስክሪፕት አፈፃፀም ወቅት ስለሆነ ተለዋዋጭ ተለዋዋጭ መፍጠር ያስፈልግዎታል (እንጠራው) postId) ከአንጓ መፍጠር-መለጠፍ በፕሮጀክት መስቀለኛ መንገድ ደረጃ. ይህንን እንዴት ማድረግ እንዳለብን አስቀድመን አውቀናል, ክፍሉን ብቻ ይመልከቱ ማስመሰያውን ወደ ተለዋዋጭ ያስቀምጡ. ይህን መታወቂያ በመጠቀም ልጥፍ ለመቀበል ጥያቄ መፍጠር ብቻ ይቀራል። ይህንን ለማድረግ፣ RequestStep እንፍጠር ልጥፍ ማግኘት ከሚከተሉት መለኪያዎች ጋር:

  • የጥያቄ አይነት፡ GET
  • URL፡ ${domain}/posts/${$dynamicVar.postId}

ሁለተኛውን ደረጃ ተግባራዊ ለማድረግ, መተዋወቅ አለብን ማረጋገጫ ቋጠሮ. የማረጋገጫ ኖድ ለተወሰኑ ጥያቄዎች ቼኮች እንዲጽፉ የሚያስችልዎ መስቀለኛ መንገድ ነው። እያንዳንዱ የማረጋገጫ መስቀለኛ መንገድ ብዙ ማረጋገጫዎችን (ቼኮች) ሊይዝ ይችላል። ስለ ሁሉም አይነት ማረጋገጫዎች ከኛ የበለጠ ማንበብ ይችላሉ። ሰነድ. እንጠቀማለን Compare ከኦፕሬተር ጋር ማረጋገጫ equal. ማረጋገጫዎችን ለመፍጠር ብዙ መንገዶች አሉ-

  1. ረጅም። ከጥያቄ ስቴፕ መስቀለኛ መንገድ አውድ ምናሌ በእጅ የማረጋገጫ መስቀለኛ መንገድ ይፍጠሩ። በተፈጠረው የማረጋገጫ መስቀለኛ መንገድ ውስጥ የፍላጎት ማረጋገጫውን ይጨምሩ እና መስኮችን ይሙሉ።
  2. ፈጣን። የአውድ ምናሌውን በመጠቀም የጥያቄ ስቴፕ መስቀለኛ መንገድ ምላሽ ካለው ማረጋገጫ ጋር የማረጋገጫ መስቀለኛ መንገድ ይፍጠሩ

ሁለተኛውን ዘዴ እንጠቀም. ለጉዳያችንም ይሄው ይመስላል።

TestMace ፈጣን ጅምር

ለማይረዱት፣ እየሆነ ያለው ነገር ይኸውና፡-

  1. በመስቀለኛ መንገድ ውስጥ ጥያቄ ያቅርቡ ልጥፍ ማግኘት
  2. በትሩ ውስጥ ተተንትኗል መልስ፣ የአውድ ምናሌውን ይደውሉ እና ይምረጡ ማረጋገጫ ይፍጠሩ -> አወዳድር -> እኩል

እንኳን ደስ ያለዎት, የመጀመሪያውን ፈተና ፈጥረናል! ቀላል፣ አይደል? አሁን ስክሪፕቱን ሙሉ በሙሉ ማስኬድ እና በውጤቱ መደሰት ይችላሉ። የቀረው ትንሽ እንደገና ማደስ እና ማውጣት ብቻ ነው። title ወደ ተለየ ተለዋዋጭ. ግን ይህንን እንደ የቤት ስራ እንተዋለን)

መደምደሚያ

በዚህ መመሪያ ውስጥ፣ የተሟላ ሁኔታን ፈጠርን እና በተመሳሳይ ጊዜ የምርታችንን አንዳንድ ባህሪያት ገምግመናል። በእርግጥ ሁሉንም ተግባራት አልተጠቀምንም እና በሚቀጥሉት ጽሁፎች ውስጥ ስለ TestMace ችሎታዎች ዝርዝር መግለጫ እንሰጣለን. ተከታተሉት!

PS ሁሉንም ደረጃዎች እንደገና ለማባዛት በጣም ሰነፍ ለሆኑ, በደግነት መዝግበናል ማከማቻ ከጽሑፉ ከፕሮጀክቱ ጋር. ጋር መክፈት ይችላሉ። ፋይል -> ክፍት ፕሮጀክት እና የፕሮጀክት ማህደሩን ይምረጡ.

ምንጭ: hab.com

አስተያየት ያክሉ