Google is committed to advancing racial equity for Black communities. See how.
This page was translated by the Cloud Translation API.
Switch to English

শংসাপত্র অটোমেশন সেটআপ

শংসাপত্র পরীক্ষা স্বয়ংক্রিয় করতে, অতিরিক্ত সেটআপ প্রয়োজন।

নীচে সমস্ত ইনস্টলেশন এবং কনফিগারেশন পদক্ষেপগুলি জিআরএল টেস্ট হারনেস সফ্টওয়্যার চালিত উইন্ডোজ মেশিনে ঘটে। চালিয়ে যাওয়ার আগে সর্বশেষতম জিআরএল থ্রেড পরীক্ষার জোতা ডাউনলোড এবং ইনস্টল করুন।

একবার ইনস্টল হয়ে গেলে পরীক্ষার অধীনে ডিভাইসের জন্য দুটি অটোমেশন পদ্ধতি রয়েছে (DUT):

  1. ওপেনথ্রেড জোতা অটোমেশন সরঞ্জাম
  2. পরীক্ষার জোতা অটো ডুট মোড

ওপেনথ্রেড জোতা অটোমেশন সরঞ্জাম

ইনস্টল করুন

  1. নিম্নলিখিত সফ্টওয়্যার ইনস্টল করুন:
    • পাইথন 2.7
    • উইন্ডোজের জন্য গিট (বাশ সমর্থন অত্যন্ত প্রস্তাবিত)
  2. অটোমেশন স্ক্রিপ্টগুলি পেতে ওপেনথ্রেড সংগ্রহস্থলের ক্লোন করুন:
    git clone https://github.com/openthread/openthread
    
  3. পাইথন প্রয়োজনীয়তা ইনস্টল করুন:
    cd tools/harness-automation
    pip install -r requirements.txt
    
  4. গুগল ক্রোম এবং ক্রোমড্রাইভার উভয়ই ইনস্টল করুন।

সজ্জিত করা

  1. অটোমেশন সরঞ্জামটির জন্য একটি কনফিগারেশন ফাইল তৈরি করুন:
    cp autothreadharness/settings_sample.py autothreadharness/settings.py
    
  2. ফাইলের নির্দেশাবলী অনুযায়ী সেই নতুন কনফিগারেশন ফাইল আপডেট করুন।
  3. C:\GRL\Thread1.1\Config\Configuration.ini পাওয়া টেস্ট জোতা কনফিগারেশন ফাইলে নিম্নলিখিত পরামিতিগুলি যুক্ত করুন C:\GRL\Thread1.1\Config\Configuration.ini :
    BrowserAutoNavigate = False

মিশ্র পরীক্ষামূলক সমর্থন bed

জোতা অটোমেশন সরঞ্জামটিও মিশ্র টেস্টবেডগুলিকে সমর্থন করে, যেখানে প্রতিটি পরীক্ষার ক্ষেত্রে ব্যবহৃত রেফারেন্স ডিভাইসগুলি একই ডিভাইসের পরিবর্তে ডিভাইসের একটি মিশ্রিত সেট। উদাহরণস্বরূপ, সমস্ত পরীক্ষার ক্ষেত্রে ওপেনথ্রেড চলমান 32 টিআই সিস 2538 বোর্ডগুলি ব্যবহার না করে আপনি প্রতিটি পরীক্ষার কেস হিসাবে চারটি থ্রেড রেফারেন্স ডিভাইসকে পছন্দসই হিসাবে মিশ্রিত করতে পারেন match

মিশ্র টেস্টবেডগুলি ব্যবহার করতে, অতিরিক্ত কনফিগারেশন প্রয়োজনীয়:

  1. C:\GRL\Thread1.1\Config\Configuration.ini পাওয়া টেস্ট জোতা কনফিগারেশন ফাইলে নিম্নলিখিত অতিরিক্ত পরামিতি যুক্ত করুন C:\GRL\Thread1.1\Config\Configuration.ini :
    EnableDeviceSelection = True
  2. থ্রেড গ্রুপ থেকে টপোলজি কনফিগারেশন ফাইলটি ডাউনলোড করুন । এই ফাইলটি TopologyConfig.txt C:\GRL\Thread1.1\Thread_Harness\TestScripts । এই ফাইলটি প্রতিটি পরীক্ষার ক্ষেত্রে প্রতিটি ভূমিকার জন্য কোন রেফারেন্স ডিভাইসটি ব্যবহার করবে তা বিশদ করে।

থ্রেড গ্রুপ দ্বারা সরবরাহিত টপোলজি কনফিগারেশন ফাইলটি অন্য মিশ্র বিছানা কনফিগারেশনের জন্য পরিবর্তন করা যেতে পারে, তবে সরকারী শংসাপত্রের জন্য মূল কনফিগারেশন অবশ্যই ব্যবহার করা উচিত।

টপোলজি কনফিগারেশন ফাইলের রেফারেন্স ডিভাইসের জন্য ব্যবহারযোগ্য বৈধ মানগুলি হ'ল:

টপোলজি কনফিগারেশন ফাইলের মান পরীক্ষার জোতা রেফারেন্স ডিভাইস
ARM এআরএম: ফায়ারফ্লাই 6 লওওয়ান শিল্ড সহ এনএক্সপি এফআরডিএম-কে 64 এফ
NXP এনএক্সপি (ফ্রিস্কেল): ইউএসবি-কেডব্লিউ 24 ডি 512 দোংলেস
OpenThread ওপেনথ্রেড: টিআই সিসি 2538DK
SiLabs সিলাবস: EM358x ইউএসবি স্টিক

টপোলজি কনফিগারেশন ফাইলের প্রতিটি পরীক্ষার কেস এন্ট্রি পৃথক লাইনে থাকতে হবে এবং role:device ফর্ম্যাট করতে হবে role:device জোড়া নিম্নরূপ:

5.3.10-Leader:NXP,Router_1:OpenThread,BorderRouter:OpenThread,MED_1:ARM

পরীক্ষার জোতা অটো ডুট মোড

জিআরএল টেস্ট হারনেস সফ্টওয়্যারটি একটি উন্নত অটো আবিষ্কার বৈশিষ্ট্য (অটো ডিট) সরবরাহ করে যা থ্রেড রেফারেন্স স্ট্যাক বিক্রেতাদের জন্য বৈধকরণ প্রক্রিয়াটিকে ত্বরান্বিত করে।

ওপেনথ্রেড একটি উদাহরণ প্রদান করে থ্রেড হোস্ট কন্ট্রোলার ইন্টারফেস (টিএইচসিআই) যা টেস্ট হারনেসকে আপনার উপাদান বা পণ্য নিয়ন্ত্রণ করতে দেয় যেমন এটি কোনও রেফারেন্স প্ল্যাটফর্ম। আপনার নির্দিষ্ট প্ল্যাটফর্মের সিরিয়াল পোর্ট বৈশিষ্ট্য অনুসারে, আপনার ডিইউটি হয়:

বিদ্যমান ওপেন ট্র্যাড রেফারেন্স প্ল্যাটফর্ম হিসাবে অভিনয় করা

যদি DUT এর সিরিয়াল বন্দরটি 115200 8-N-1 এর সেটিংসের অধীনে কাজ করে এবং প্রতিটি শারীরিক ডিভাইস পুনরায় সেট করার পরে ডিভাইসটি সঠিকভাবে প্রতিক্রিয়া জানায় (উদাহরণস্বরূপ, উইন্ডোজ মেশিনে ডিভাইসের বৈধ সংযোগটি নিশ্চিত করতে), তবে প্ল্যাটফর্মটি ব্যবহার করতে পারে ওপেনথ্রেড THCI সরঞ্জাম। এই সরঞ্জামটি ডিভাইসটিকে পরীক্ষার সময় ওপেনথ্রেড রেফারেন্স প্ল্যাটফর্ম হিসাবে কাজ করতে দেয়।

  1. জিআরএল টেস্টের জোতা খোলা থাকলে বন্ধ করুন।
  2. ডিভাইসটি উইন্ডোজ মেশিনে সংযুক্ত করুন।
  3. পাইথন পাইসারিয়াল মডিউলটি ব্যবহার করে ডিভাইস সিরিয়াল পোর্ট হার্ডওয়্যার সনাক্তকারীটি সন্ধান করুন:
    1. উইন্ডোজ মেশিনে পাইসারিয়াল ইনস্টল করুন
    2. মেশিনে সংযুক্ত ডিভাইসগুলির জন্য সমস্ত হার্ডওয়্যার সনাক্তকারী (ভিআইডি এবং পিআইডি) গণনা করতে উইন্ডোজ কমান্ড লাইনে পাইথন ব্যবহার করুন। এই আউটপুটে, একটি ডিভাইস ভিআইডি = 1366 এবং পিআইডি = 1015:
      python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: USB\VID_1366+PID_1015+MI_00
      এর সনাক্তকারী সাথে সংযুক্ত রয়েছে
    3. আপনি যদি ইতিমধ্যে COM পোর্টটি জানেন তবে আপনি একটি পৃথক কমান্ড ব্যবহার করতে পারেন। উদাহরণস্বরূপ, যদি COM পোর্টটি COM10 :
      python -c "import serial.tools.list_ports;print [ports[2] for ports in serial.tools.list_ports.comports() if ports[0] == 'COM10']"
      ['USB\VID_1366+PID_1015+MI_00']
      হয়
  4. গোল্ডেন ডিভাইস তালিকা আপডেট করুন:
    1. ওপেন C:\GRL\Thread1.1\Config\Configuration.ini
    2. মধ্যে OpenThread গ্রুপ আপডেট করুন GoldenDeviceHardwareIds (গুলি) পর্ণ এবং ডিভাইস এর PID, সঙ্গে অ্যারে:
      GoldenDeviceHardwareIds = {
      'NXP': ['VID:PID=1FC9:0300','VID:PID=15A2:0300','VID:PID=1366:1015'],
      'SiLabs': 'VID:PID=10C4:8A5E',
      'ARM': 'VID:PID=0D28:0204',
      'OpenThread':['VID:PID=10C4:EA60','VID:PID=1366:1015']}
  5. অটো ডট মোড সক্ষম করুন

একটি নতুন রেফারেন্স প্ল্যাটফর্ম হিসাবে অভিনয় করা

DUT- র সিরিয়াল পোর্টটি যদি যথাযথ সিরিয়াল পোর্ট সেটিংসের আওতায় কাজ না করে, বা কোনও শারীরিক ডিভাইস রিসেটের পরে ডিভাইসটি সঠিকভাবে প্রতিক্রিয়া না জানায় (রিসেটের 3-6 সেকেন্ডের মধ্যে অপঠনযোগ্য কোড আউটপুট দেয়), তবে ওপেনথ্রেড THCI চিকিত্সার জন্য অনুকূলিতকরণ করা যেতে পারে টেস্ট জোতাতে নতুন প্ল্যাটফর্ম হিসাবে ডিভাইস।

উদাহরণস্বরূপ, নর্ডিক অর্ধপরিবাহী nRF52840 প্ল্যাটফর্ম ব্যবহার করে THCI কাস্টমাইজ করতে:

  1. জিআরএল টেস্টের জোতা খোলা থাকলে বন্ধ করুন।
  2. টার্গেট ডিভাইসের ইউআরটি বৈশিষ্ট্যের উপর ভিত্তি করে /tools/harness-thci/OpenThread.py সংশোধন করুন। পরিবর্তনগুলি লক্ষ্য ডিভাইসের মধ্যে পৃথক হতে পারে। নর্ডিক nRF52840 প্ল্যাটফর্মের ক্ষেত্রে:

    1. পুনঃনামকরণ OpenThread.py ফাইল nRF52840.py
    2. "ওপেনথ্রেড" এর প্রথম তিনটি উপস্থিতি "nRF52840" এ পরিবর্তন করুন:

      >> Device : nRF52840 THCI
      >> Class : nRF52840
      
      class nRF52840(IThci):
      
    3. সিরিয়াল পোর্ট পরামিতি পরিবর্তন করুন:

      def _connect(self):
          print 'My port is %s' % self.port
          if self.port.startswith('COM'):
              self.handle = serial.Serial(self.port, 115200, timeout=0)
              time.sleep(1)
              self.handle.write('\r\n')
              time.sleep(0.1)
              self._is_net = False
          elif ':' in self.port:
              host, port = self.port.split(':')
              self.handle = socket.create_connection((host, port))
              self.handle.setblocking(0)
              self._is_net = True
          else:
              raise Exception('Unknown port schema')
          self.UIStatusMsg = self.getVersionNumber()
      
    4. ডিভাইস পুনরায় সেট করার পরে অপঠনযোগ্য কোড আউটপুটটির প্রভাব দূর করতে ঘুমের সময় পরিবর্তন করুন:

      def powerDown(self):
          """power down the Thread device"""
          print '%s call powerDown' % self.port
          self._sendline('reset')
          self.isPowerDown = True
          time.sleep(8)  # New addition
      
      def reboot(self):
          """reset and rejoin to Thread Network without any timeout
      
          Returns:
              True: successful to reset and rejoin the Thread Network
              False: fail to reset and rejoin the Thread Network
          """
          print '%s call reboot' % self.port
          try:
              self._sendline('reset')
              self.isPowerDown = True
              time.sleep(8)  # Updated from 3 to 8
      
      def reset(self):
          """factory reset"""
          print '%s call reset' % self.port
          try:
              self._sendline('factoryreset')
              time.sleep(8)  # Updated from 3 to 8
              self._read()
      
      def resetAndRejoin(self, timeout):
          """reset and join back Thread Network with a given timeout delay
      
          Args:
              timeout: a timeout interval before rejoin Thread Network
      
          Returns:
              True: successful to reset and rejoin Thread Network
              False: fail to reset and rejoin the Thread Network
          """
          print '%s call resetAndRejoin' % self.port
          print timeout
          try:
              self._sendline('reset')
              self.isPowerDown = True
              time.sleep(timeout)
              if timeout < 8:      # Sleep a bit longer if the timeout is short
                  time.sleep(8 - timeout)
      
  3. পরিবর্তিত nRF52840.py ফাইলটি C:\GRL\Thread1.1\Thread_Harness\THCI

  4. টেস্ট হারনেসে নতুন প্ল্যাটফর্মের তথ্য যুক্ত করুন:

    1. আপনার প্ল্যাটফর্মের পার্থক্যটি আরও সহজ করার জন্য একটি আইকন (png বা jpg ফর্ম্যাটে) তৈরি করুন এবং এটি C:\GRL\Thread1.1\Web\images অনুলিপি করুন।
    2. আপডেট C:\GRL\Thread1.1\Web\data\deviceInputFields.xml নতুন DEVICE বিভাগ সহ, যেখানে thumbnail প্যারামিটারটি আইকন ফাইল:

      <DEVICE name="nRF52840" thumbnail="nRF52840.jpg" description ="nRF52840: Nordic" THCI="nRF52840">
          <ITEM label="Serial Line"
                type="text"
                forParam="SerialPort"
                validation="COM"
                hint="eg: COM1">COM
          </ITEM>
          <ITEM label="Speed"
                type="text"
                forParam="SerialBaudRate"
                validation="baud-rate"
                hint="eg: 115200">115200
          </ITEM>
      </DEVICE>
      
  5. ডিভাইসটি উইন্ডোজ মেশিনে সংযুক্ত করুন।

  6. পাইথন পাইসারিয়াল মডিউলটি ব্যবহার করে ডিভাইস সিরিয়াল পোর্ট হার্ডওয়্যার সনাক্তকারীটি সন্ধান করুন:

    1. উইন্ডোজ মেশিনে পাইসারিয়াল ইনস্টল করুন
    2. মেশিনে সংযুক্ত ডিভাইসগুলির জন্য সমস্ত হার্ডওয়্যার সনাক্তকারী (ভিআইডি এবং পিআইডি) গণনা করতে উইন্ডোজ কমান্ড লাইনে পাইথন ব্যবহার করুন। এই আউটপুটে, একটি ডিভাইস ভিআইডি = 1366 এবং পিআইডি = 1015:
      python -m serial.tools.list_ports -v
      COM10
          desc: USB Serial Port (COM10)
          hwid: USB\VID_1366+PID_1015+MI_00
      এর সনাক্তকারী সাথে সংযুক্ত রয়েছে
    3. আপনি যদি ইতিমধ্যে COM পোর্টটি জানেন তবে আপনি একটি পৃথক কমান্ড ব্যবহার করতে পারেন। উদাহরণস্বরূপ, COM পোর্টটি যদি COM10 :
      python -c "import serial.tools.list_ports;print [ports[2] for ports in serial.tools.list_ports.comports() if ports[0] == 'COM10']"
      ['USB\VID_1366+PID_1015+MI_00']
      হয়
  7. গোল্ডেন ডিভাইস তালিকা আপডেট করুন:

    1. ওপেন C:\GRL\Thread1.1\Config\Configuration.ini
    2. একটি নতুন প্ল্যাটফর্ম গোষ্ঠী যোগ করুন GoldenDeviceHardwareIds পর্ণ এবং ডিভাইস এর PID, সঙ্গে অ্যারে:
      GoldenDeviceHardwareIds = {
      'NXP': ['VID:PID=1FC9:0300','VID:PID=15A2:0300','VID:PID=1366:1015'],
      'SiLabs': 'VID:PID=10C4:8A5E',
      'ARM': 'VID:PID=0D28:0204',
      'OpenThread':'VID:PID=10C4:EA60',
      'nRF52840': 'VID:PID=1366:1015'}
  8. অটো ডট মোড সক্ষম করুন

অটো ডট মোড সক্ষম করুন

উপরোক্ত দুটির মধ্যে একটির কনফিগারেশন বিকল্প সম্পূর্ণ হওয়ার পরে:

  1. জিআরএল টেস্ট হারনেসটি খুলুন, ডিভাইস / পোর্টটি এখন একটি নতুন রেফারেন্স ডিভাইস হিসাবে উপস্থিত হবে।
  2. সমর্থিত হার্ডওয়্যার তালিকার নীচে অটো ডট ডিভাইস নির্বাচন সক্ষম করুন চেকবক্সটি নির্বাচন করুন।
  3. ডিভাইসটিকে ডিটি হিসাবে সেট করতে টার্গেট ডিভাইস / পোর্টের নীচে ডিট হিসাবে সেট করুন রেডিও বোতামটি নির্বাচন করুন।
ওটি শংসাপত্রের অটো ডুট