ນີ້ແມ່ນຄໍາສັ່ງ gpsfake ທີ່ສາມາດດໍາເນີນການໄດ້ໃນ OnWorks ຜູ້ໃຫ້ບໍລິການໂຮດຕິ້ງຟຣີໂດຍໃຊ້ຫນຶ່ງໃນຫຼາຍໆບ່ອນເຮັດວຽກອອນໄລນ໌ຂອງພວກເຮົາເຊັ່ນ Ubuntu Online, Fedora Online, Windows online emulator ຫຼື MAC OS online emulator
ໂຄງການ:
NAME
gpsfake - test harness for gpsd, simulating a GPS
ສະຫຼຸບສັງລວມ
gpsfake [−1] [-ຊ] [-ຂ] [-ຄ ໄລຍະຫ່າງ] [-i] [-D ລະດັບດີບັກ] [-l] [-ມ ຕິດຕາມກວດກາ] [-g] [-n]
[-or ທາງເລືອກໃນການ] [-ປ] [-ປ port] [-ຣ initcmd] [-ສ ຄວາມໄວ] [-S] [-u] [-t] [-v]
[logfile... ]
ລາຍລະອຽດ
gpsfake ເປັນ harness ການທົດສອບສໍາລັບ gpsd ແລະລູກຄ້າຂອງຕົນ. ມັນເປີດ pty (pseudo-TTY), ເປີດຕົວ
ຕົວຢ່າງ gpsd ທີ່ຄິດວ່າຝ່າຍສໍາລອງຂອງ pty ແມ່ນອຸປະກອນ GPS ຂອງມັນ, ແລະຊ້ໍາອີກ.
feeds ເນື້ອໃນຂອງຫນຶ່ງຫຼືຫຼາຍ logfiles ການທົດສອບໂດຍຜ່ານຂ້າງແມ່ບົດກັບ GPS ໄດ້. ຖ້າ
ມີຫຼາຍ logfiles, ປະໂຫຍກຈາກພວກມັນຖືກ interleaved ໃນຄໍາສັ່ງຂອງໄຟລ໌
ຖືກກໍານົດ.
gpsfake ບໍ່ຕ້ອງການສິດທິຂອງຮາກ, ແລະສາມາດດໍາເນີນການພ້ອມກັນກັບການຜະລິດ
ຕົວຢ່າງ gpsd ໂດຍບໍ່ມີບັນຫາ.
ໄຟລ໌ບັນທຶກອາດມີແພັກເກັດໃນຮູບແບບທີ່ຮອງຮັບ, ລວມທັງ NMEA ໂດຍສະເພາະ,
SiRF, TSIP, ຫຼື Zodiac. ເສັ້ນຊັ້ນນໍາທີ່ເລີ່ມຕົ້ນດ້ວຍ # ຈະຖືກປະຕິບັດເປັນຄໍາເຫັນແລະ
ບໍ່ສົນໃຈ, ຍົກເວັ້ນກໍລະນີພິເສດຕໍ່ໄປນີ້:
· ຄໍາຄິດຄໍາເຫັນຂອງແບບຟອມ #Date: yyyy-mm-dd (ຮູບແບບວັນທີ ISO8601) ອາດຈະຖືກນໍາໃຊ້ເພື່ອກໍານົດ
ວັນທີເລີ່ມຕົ້ນຂອງບັນທຶກ.
· ຄຳເຫັນຂອງແບບຟອມ #Serial: [0-9]* [78][NOE][12] ອາດຈະຖືກໃຊ້ເພື່ອຕັ້ງ serial
ຕົວກໍານົດການສໍາລັບບັນທຶກ - ອັດຕາ baud, ຄວາມຍາວຂອງຄໍາ, ຢຸດ bits.
· ຄຳ ເຫັນຂອງແບບຟອມ # ການຂົນສົ່ງ: UDP ອາດຈະຖືກໃຊ້ເພື່ອປອມແປງແຫຼ່ງ UDP ແທນທີ່ຈະເປັນ
pty ປົກກະຕິ.
ຕົວຢ່າງ gpsd ແມ່ນດໍາເນີນການຢູ່ດ້ານຫນ້າ. ກະທູ້ທີ່ສົ່ງຂໍ້ມູນ GPS ປອມໄປຫາ daemon ແມ່ນ
ແລ່ນໃນພື້ນຫຼັງ.
OPTIONS
ດ້ວຍຕົວເລືອກ -1, logfile ຖືກຕີຄວາມໝາຍພຽງຄັ້ງດຽວແທນທີ່ຈະຊ້ຳແລ້ວຊ້ຳອີກ. ນີ້
ທາງເລືອກແມ່ນມີຈຸດປະສົງເພື່ອອໍານວຍຄວາມສະດວກໃນການທົດສອບການຖົດຖອຍ.
ໄດ້ -b ເປີດໃຊ້ຕົວຊີ້ບອກຄວາມຄືບໜ້າ twirling-baton ກ່ຽວກັບຄວາມຜິດພາດມາດຕະຖານ. ໃນການຢຸດເຊົາ, ມັນ
ລາຍງານເວລາທີ່ຜ່ານໄປ.
ໄດ້ -c ກໍານົດຄວາມລ່າຊ້າລະຫວ່າງປະໂຫຍກໃນວິນາທີ. ຄ່າເສດສ່ວນຂອງວິນາທີແມ່ນ
ທາງດ້ານກົດໝາຍ. ຄ່າເລີ່ມຕົ້ນແມ່ນສູນ (ບໍ່ມີການຊັກຊ້າ).
ໄດ້ -l ເຮັດໃຫ້ໂປຣແກມ dump ແຖວ ຫຼື packet number ກ່ອນແຕ່ລະປະໂຫຍກຖືກປ້ອນ
daemon ໄດ້. ຖ້າປະໂຫຍກນັ້ນເປັນຕົວໜັງສື (ເຊັ່ນ: NMEA), ຂໍ້ຄວາມກໍ່ຖືກຖິ້ມໄວ້ເຊັ່ນກັນ. ຖ້າບໍ່,
ແພັກເກັດຈະຖືກຖິ້ມໄວ້ໃນເລກຖານສິບຫົກ (ຍົກເວັ້ນແພັກເກັດ RTCM, ເຊິ່ງບໍ່ໄດ້ຖືກຖິ້ມຢູ່ທີ່
ທັງຫມົດ). ຕົວເລືອກນີ້ແມ່ນເປັນປະໂຫຍດສໍາລັບການກວດສອບວ່າ gpsfake ໄດ້ຮັບຂອບເຂດຂອງແພັກເກັດທີ່ຖືກຕ້ອງ.
ໄດ້ -i ແມ່ນສໍາລັບຂັ້ນຕອນດຽວຜ່ານ logfiles. ມັນຖິ້ມເສັ້ນຫຼືເລກແພັກເກັດ (ແລະ
the sentence if the protocol is textual) ຕາມດ້ວຍ "?". ພຽງແຕ່ເມື່ອຜູ້ໃຊ້ກົດປຸ່ມ Enter
ແມ່ນສາຍທີ່ປ້ອນກັບ gpsd.
ໄດ້ -m ກໍານົດໂຄງການຕິດຕາມກວດກາພາຍໃນທີ່ daemon ຄວນດໍາເນີນການ. ທາງເລືອກນີ້ແມ່ນ
ມີຈຸດປະສົງເພື່ອນໍາໃຊ້ກັບ valgrind(1) gdb(1) ແລະໂຄງການທີ່ຄ້າຍຄືກັນ.
ໄດ້ -g ໃຊ້ສະຖານທີ່ຕິດຕາມກວດກາເພື່ອດໍາເນີນການ instance gpsd ພາຍໃນ gpsfake ພາຍໃຕ້ການຄວບຄຸມຂອງ
gdb.
ໄດ້ -o ກໍານົດທາງເລືອກທີ່ຈະສົ່ງກັບ daemon. ທາງເລືອກ -n ຜ່ານ -n ເພື່ອເລີ່ມຕົ້ນການ
daemon ອ່ານ GPS ໂດຍບໍ່ຕ້ອງລໍຖ້າລູກຄ້າ (ເທົ່າກັບ -o "-n"). ໄດ້ -D passes
a -D ທາງເລືອກຂອງ daemon: ດັ່ງນັ້ນ -D 4 ແມ່ນ shorthand ສໍາລັບ -o "-D 4".
ຕົວເລືອກ -p ("ທໍ່") ກໍານົດໂຫມດ watcher ແລະ dumps ການແຈ້ງເຕືອນ NMEA ແລະ GPSD
ສ້າງຂຶ້ນໂດຍບັນທຶກເພື່ອຜົນຜະລິດມາດຕະຖານ. ນີ້ແມ່ນເປັນປະໂຫຍດສໍາລັບການທົດສອບ regression.
ຕົວເລືອກ -P ("ພອດ") ກໍານົດພອດຟັງຂອງ daemon.
ໄດ້ -r ກໍານົດຄໍາສັ່ງການເລີ່ມຕົ້ນທີ່ຈະໃຊ້ໃນຮູບແບບທໍ່. ຄ່າເລີ່ມຕົ້ນແມ່ນ
?WATCH={"enable":true,"json":true}.
ໄດ້ -s ກໍານົດອັດຕາ baud ສໍາລັບ tty ສໍາລອງ. ຄ່າເລີ່ມຕົ້ນແມ່ນ 4800.
ທາງເລືອກ -S ບອກ gpsfake ໃສ່ຄວາມລ່າຊ້າທີ່ແທ້ຈິງໃນການປ້ອນຂໍ້ມູນການທົດສອບແທນທີ່ຈະ
ພະຍາຍາມເອົາມັນຜ່ານ daemon ໄວເທົ່າທີ່ຈະໄວໄດ້. ນີ້ຈະເຮັດໃຫ້ການທົດສອບແລ່ນ
ຊ້າລົງຫຼາຍ, ແຕ່ຫຼີກເວັ້ນຄວາມລົ້ມເຫຼວຂອງ flaky ເນື່ອງຈາກ lode ເຄື່ອງແລະເງື່ອນໄຂການແຂ່ງຂັນທີ່ເປັນໄປໄດ້ໃນ
ຊັ້ນ pty.
ໄດ້ -t ບັງຄັບໃຫ້ກອບການທົດສອບໃຊ້ TCP ຫຼາຍກວ່າອຸປະກອນ pty. ນອກຈາກຈະເປັນການທົດສອບ
ຂອງການຈັດການແຫຼ່ງ TCP, ນີ້ອາດຈະເປັນປະໂຫຍດສໍາລັບການທົດສອບຈາກພາຍໃນຄຸກ chroot ບ່ອນທີ່
ການເຂົ້າເຖິງອຸປະກອນ pty ຖືກລັອກອອກ.
ໄດ້ -u ບັງຄັບໃຫ້ກອບການທົດສອບໃຊ້ UDP ຫຼາຍກວ່າອຸປະກອນ pty. ນອກຈາກຈະເປັນການທົດສອບ
ຂອງການຈັດການແຫຼ່ງ UDP, ນີ້ອາດຈະເປັນປະໂຫຍດສໍາລັບການທົດສອບຈາກພາຍໃນຄຸກ chroot ບ່ອນທີ່
ການເຂົ້າເຖິງອຸປະກອນ pty ຖືກລັອກອອກ.
ໄດ້ -v ເປີດໃຊ້ບົດລາຍງານຄວາມຄືບຫນ້າ verbose ກັບ stderr. ມັນເປັນປະໂຫຍດຕົ້ນຕໍສໍາລັບການ debugging
gpsfake ຕົວຂອງມັນເອງ.
ໄດ້ -x dumps packets ເປັນ gpsfake ລວບລວມພວກເຂົາ. ມັນເປັນປະໂຫຍດຕົ້ນຕໍສໍາລັບການ debugging gpsfake
ຕົວເອງ
ໄດ້ -h ເຮັດໃຫ້ gpsfake ພິມຂໍ້ຄວາມການນໍາໃຊ້ແລະອອກ.
argument ຈະຕ້ອງເປັນຊື່ຂອງໄຟລ໌ທີ່ມີຂໍ້ມູນທີ່ຈະຮອບວຽນຢູ່ໃນອຸປະກອນ.
gpsfake ຈະພິມການແຈ້ງເຕືອນໃນແຕ່ລະຄັ້ງທີ່ມັນຮອບວຽນ.
ໂດຍປົກກະຕິ, gpsfake ສ້າງ pty ສໍາລັບແຕ່ລະ logfile ແລະຜ່ານດ້ານ slave ຂອງອຸປະກອນ
ກັບ daemon ໄດ້. ຖ້າຄໍາຄິດຄໍາເຫັນ header ໃນ logfile ມີ string "UDP", packets ແມ່ນ
ແທນທີ່ຈະສົ່ງຜ່ານພອດ UDP 5000 ໄປຫາທີ່ຢູ່ 192.168.0.1.255. ທ່ານສາມາດຕິດຕາມກວດກາໃຫ້ເຂົາເຈົ້າ
ກັບສິ່ງນີ້: tcpdump -s0 -n -A -i lo udp ແລະ port 5000.
MAGIC COMMENTS
ຄໍາຄິດເຫັນ magic ບາງຢ່າງໃນຫົວການທົດສອບສາມາດປ່ຽນແປງເງື່ອນໄຂຂອງການທົດສອບໄດ້. ເຫຼົ່ານີ້
ແມ່ນ:
ລຳ ດັບ:
ອາດຈະປະກອບດ້ວຍການຕັ້ງຄ່າ serial-port ເຊັ່ນ 4800 7N2 - ອັດຕາ baud ຕິດຕາມດ້ວຍ 7 ຫຼື 8 ສໍາລັບ
ຄວາມຍາວ byte, N ຫຼື O ຫຼື E ສໍາລັບ parity ແລະ 1 ຫຼື 2 ສໍາລັບ stop bits. ການທົດສອບແມ່ນດໍາເນີນການກັບ
ການຕັ້ງຄ່າເຫຼົ່ານັ້ນຢູ່ໃນພອດສໍາລອງທີ່ daemon ເຫັນ.
ການຂົນສົ່ງ:
ຄ່າ 'TCP' ແລະ 'UDP' ບັງຄັບໃຊ້ TCP ແລະ UDP feeds ຕາມລໍາດັບ (ຄ່າເລີ່ມຕົ້ນແມ່ນ
pty).
Delay-Cookie:
ຕ້ອງຕິດຕາມດ້ວຍຊ່ອງຫວ່າງສອງຊ່ອງທີ່ແຍກກັນ, ຕົວອັກສອນຕົວຂັ້ນ ແລະ a
ຄວາມລ່າຊ້າຕົວເລກໃນວິນາທີ. ແທນທີ່ຈະຖືກແຍກອອກໂດຍຂອບເຂດຂອງແພັກເກັດ, ການທົດສອບ
ການໂຫຼດຖືກແຍກຢູ່ໃນຕົວຂັ້ນ. ການຊັກຊ້າແມ່ນປະຕິບັດຫຼັງຈາກແຕ່ລະອາຫານ. ສາມາດເປັນປະໂຫຍດ
ສໍາລັບການກໍານົດຂອບເຂດການຂຽນຢູ່ກາງຊອງ.
CUSTOM TESTS
gpsfake ເປັນ wrapper trivial ປະມານໂມດູນ Python, ຍັງມີຊື່ gpsfake, ທີ່ສາມາດຖືກນໍາໃຊ້.
ກັບ script sessions ຢ່າງເຕັມສ່ວນທີ່ກ່ຽວຂ້ອງກັບ instance gpsd, ຈໍານວນຂອງເຊດຊັນລູກຄ້າ, ແລະໃດໆ
ຈໍານວນຂອງ GPSes ປອມໃຫ້ອາຫານຕົວຢ່າງ daemon ກັບຂໍ້ມູນຈາກບັນທຶກປະໂຫຍກທີ່ລະບຸໄວ້.
ແຫຼ່ງຂໍ້ມູນແລະເອກະສານທີ່ຝັງໄວ້ສໍາລັບໂມດູນນີ້ແມ່ນສົ່ງກັບການພັດທະນາ gpsd
ເຄື່ອງມື. ທ່ານສາມາດນໍາໃຊ້ມັນເພື່ອ torture-test ທັງ gpsd ຕົວມັນເອງຫຼືລູກຄ້າ gpsd-aware ໃດຫນຶ່ງ
ຄໍາຮ້ອງສະຫມັກ.
ໄຟລ໌ບັນທຶກສໍາລັບການນໍາໃຊ້ກັບ gpsfake ສາມາດດຶງຂໍ້ມູນໂດຍໃຊ້ gpspipe, gpscat, ຫຼື gpsmon ຈາກ
ການແຈກຢາຍ gpsd, ຫຼືແອັບພລິເຄຊັນອື່ນໆທີ່ສາມາດສ້າງເຂົ້າກັນໄດ້
ຜົນຜະລິດ.
ຖ້າ gpsfake ອອກມາດ້ວຍ "ບໍ່ສາມາດປະຕິບັດ gpsd: executable not found." ສິ່ງແວດລອ້ມ
ຕົວປ່ຽນແປງ GPSD_HOME ສາມາດຖືກຕັ້ງເປັນເສັ້ນທາງທີ່ gpsd ສາມາດພົບໄດ້. (ແທນທີ່ຈະເພີ່ມມັນ
folder ກັບຕົວແປສະພາບແວດລ້ອມ PATH
ໃຊ້ gpsfake ອອນໄລນ໌ໂດຍໃຊ້ບໍລິການ onworks.net