วันอาทิตย์ที่ 30 เมษายน พ.ศ. 2560

ChromeDriver ตัวที่ใช้ล่าสุดในการทำ test

https://sites.google.com/a/chromium.org/chromedriver/downloads

Building SoftWare II : Schedule App Update

GitHub

ตอนนี้ ได้ทำการเพิ่ม การแจ้งเตือนก่อนทำการเพิ่ม Activity ทุกครั้งแล้ว



    พยายามเพิ่ม Activity ใหม่
 จะเข้าไปหน้า แจ้งเตือนเพื่อให้ยืนยันอีกรอบ
เพิ่มได้อย่างถูกต้อง

พยายามเพิ่ม อีกตัวนึงที่มีส่วนทับกัน

 ขึ้นแจ้งเตือนส่วนที่จะทับกัน และจะหายไป

 จากนั้น ก็ทำการเพิ่ม activity ไปอีก ตัว
 ลองอีกครั้ง


วันพุธที่ 26 เมษายน พ.ศ. 2560

Building Software II : Schedule APP update GUI


ADD CSS AND BOOTSTRAP

Fix bug table

.......................
การเพิ่ม Bootstrap , css ทำให้มีการเปลี่ยนแปลง HTML เล็กน้อยทำให้ Functional test ไม่สามารถ ผ่านได้ จะทำการแก้ทีหลัง
.....................




วันอาทิตย์ที่ 23 เมษายน พ.ศ. 2560

Building Software II : Schedule app update gui และการใช้งาน

หน้าจอหลักสามารถเพิ่ม User ได้ และจะแสดง User ทั้งหมด เป็น list ให้กดเข้าไปที่หน้าของ User แต่ละคนได้


นี้คือหน้าของ User แต่ละคน มีคำทักทาย ตรงกลาง มี ลิงค์กลับหน้าหลักซ้ายบน
มีตาราง และ ช่องเพิ่มขึ้นมูล

ทดลองกรอกตามนี้


พบว่าข้อมูลได้ถูกเพิ่มลงไป

ทดลองกรอกทับ เวลาเดียวกัน อันนี้ทับจากด้านซ้าย

ข้อมูลที่ถูกทับหายไป และมีข้อมูลใหม่มาแทน

ลองอีกครั้ง คราวนี้ทับทางขวา

แทนที่ได้

เพิ่มอื่นๆลงไป

ทดงานได้ปกติ

ฺBuilding Software II : Schedule Commit update

สร้าง Model ของ Activity

Unit test ทดสอบการสร้าง Activity หลัง POST

ทดสอบการ สร้าง Activity เมื่อจำเป็นเท่านั้น และการ redirect

ทดสอบว่าการสร้าง activity นั้นถูกต้องหรือไม่

แก้ไขบัคตัวแปรตัวเลข

เพิ่มฟังก์ชั่นสร้าง activity ว่างให้กับ user ก่อนเสมอ และใน HTML ใช้ django ช่วยในการทำตาราง

ปรับการทำงานของ unittest ให้เหมาะสมขึ้น

ตารางแสดงแบบ colspan ได้แล้ว

replace activity เมื่อทับกัน

ผ่านการทดสอบการลบตัวที่ทับของ activity

ผ่านการทดสอบ การแจ้งเตือน error เมื่อกรอกเวลาที่ไม่สามารถเป็นไปได้


วันพุธที่ 19 เมษายน พ.ศ. 2560

Building Software II : GUI ล่าสุดของแอป Schedule

หน้าจอหลักจะมีรายชื่อ User กับ แบบฟอร์มสร้าง User ใหม่
เมื่อกดที่ชื่อ User จะเข้าไปอีกหน้านึง

 เป็นหน้าที่ 2 เป็นหน้าที่ใช้แสดงข้อมูลของ User นั้นๆ เป็น รายวัน 7 วัน และในแต่ละวันมี 24 ชม ตั้งแต่ 0.00 - 23.00 โดยช่วงเวลาเป็น 1 ชม และมีแบบฟอร์มสร้าง กิจกรรมใหม่ได้


วันอังคารที่ 18 เมษายน พ.ศ. 2560

Building Software II : Schedule Commit update

fucntional test ทดสอบกการใช้งาน form สามารถใช้งานได้

เมื่อกรอกแบบฟอร์มแล้ว หน้าจอกลับมาที่หน้า user หรือไม่

functional test ทดสอบลิงค์กลับหน้า main menu

Functional test fail ทดสอบว่าข้อมูลที่กรอกไปนั้นขึ้นตารางหรือไม่

---------------------------------------------------------------------------------------

สิ่งที่เหลือ

- ทดสอบ unittest ในส่วนของการบันทึกค่าการทำตาราง
- ปรับปรุง โค้ดให้เหมาะสมขึ้น
- model ตารางงาน
- การแสดงผลตารางที่ถูกต้อง
- การบันทึกข้อมูล
- การตรวจสอบความถูกต้องของข้อมูลที่เข้ามา
- อื่นๆ

วันอาทิตย์ที่ 16 เมษายน พ.ศ. 2560

Building Software II : Schedule Commit update

test ว่าใน userpage.html มี id='time' มั้ย กำหนดรูปแบบตารางคร่าวๆ

test ในfunctional_test ว่า มีการแสดงตารางเวลาที่ครบมั้ย

พยายาม tests ว่ามีแถวที่แสดงวันครบมั้ย ซึ่งเฟล

การทดสอบว่ามีวันแสดงครบมั้ยผ่านแล้ว รวมทั้งทดสอบใน unittest ด้วย

แก้ไขเวลาหลักหน่วยให้มี 0 นำหน้า

ปรับปรุงตารางเล็กน้อย

Building Software II : Schedule Commit update

เพิ่ม userpage.html และผ่านการทดสอบ title เมื่อคลิกเข้า link user

functional_tests test ว่ามีคำทักทายตามด้วยชื่อ user ตรงกลางหน้าเพจมั้ย ผ่าน

ทดสอบ root url ของ user page ผ่าน

พยายาม หา element id ="table_time" ทั้งใน func และ unittest แต่ เฟล

ผ่านการทดสอบ หา element_id = 'table_time'

Building Software II : Schedule Commit update

ALL COMMIT

......................................

functional_test try to test count link for user

ใน Unit-test ทดสอบว่าใน template นั้นมีลิงค์ที่ไปยังหน้าของแต่ละ user หรือไม่ และทำการแก้ไขไฟล์ html ให้สร้าง link ของแต่ละ user ขึ้นมาตาม pk object

กำหนด href ของแต่ละ ลิงค์ user ทำให้สามารถผ่าน unit-test ที่ทดสอบว่ามีลิงค์ของแต่ละ user หรือไม่

นับจำนวนลิงค์ใน functional_test ผ่านแล้ว ทดสอบการคลิกที่ลิงค์ ผ่านแล้วแต่พบปัญหาว่า ไม่พบหน้าดังกล่าว

Building Software II : Schedule Commit update

ลบการเปลี่ยนแปลงของ Geckodriver และ ผ่านการเทสแสดงรายชื่อทั้งหมด

เปลี่ยนแปลงการทดสอบของ functional_tests ให้เหมาะสมขึ้นในส่วน การทดสอบคำทักทาย

ทดสอบเทสได้โดยไม่จำเป็นต้องลบ csrf ออก

test rediract

test การบันทึก user เมื่อต้องการจริงๆเท่านั้น

test การแสดง user ทั้งหมดที่มี

functional_tests ทดสอบการสร้างหลาย user

unit test ทดสอบการ สร้าง user และ เช็คว่าแยกกันจริงๆมั้ย

................

ลิงค์ all commit

วันศุกร์ที่ 14 เมษายน พ.ศ. 2560

Building Software II : Schedule Commit update

test root url
ทดสอบว่า Root url ถูกต้องมั้ย

test right title
ทดสอบว่า title ที่ปรากฏออกมานั้นมันถูกต้องมั้ย

test right html , and test have a "Hi who are you? " in center of this page ?
ทดสอบว่า มีคำว่า Hi , Who are you ? ตรงกลางหน้าเพจมั้ย

start test input box
เริ่มการทดสอบการกรอกข้อมูลสร้าง User

make models user and make form
สร้าง models สำหรับเก็บข้อมูลของ user และสร้าง แบบฟอร์ม สำหรับเก็บข้อมูลที่จำเป็น
จากในไฟล์ homepage.html

use LiveServerTestCase
ย้าย functional_tests.py ไปในโฟล์เดอร์ functional_test และใช้เป็น test แทน
สืบทอดคุณสมบัติจาก LiveServerTestCase เพื่อที่จะไม่สงผลกับ Database หลัก

Set input in form
กำหนด ค่า input เริ่มต้นเช่น placeholder = user name

test send value in form and try to check that appear a new user like fox ?
กำลังจะเริ่มทำการเช็คว่า หลังจากส่งข้อมูลไปสร้าง user แล้ว มันมี user ใหม่ปรากฏขึ้น
มาที่หน้าเพจมั้ย แต่ยังไม่สามารถผ่านได้ต้องแก้ไขใน unit-test ภายหลัง

....................

GitHub

วันพฤหัสบดีที่ 13 เมษายน พ.ศ. 2560

Building Software II : schedule commit

start project start app and set gitignore

ทำการสร้างโปรเจคและ เริ่ม app schedule และทำการตั้งค่า gitignore ให้ไม่บันทึก

การเปลี่ยนแปลงของ database pyc อะไรพวกนี้

User-story and functional_tests

สร้าง User-story คร่าวๆ บนไฟล์ functional_test

set self.fail กับ geckodriver

วันศุกร์ที่ 7 เมษายน พ.ศ. 2560

ฺBuilding Software II : ตารางเรียน

GitHub

https://github.com/poklonas/schedule

คุณสมบัติเบื้องต้นคือ

1. มี User
2. ในแต่ละ User จะมีตารางเวลา 0.00 - 23.00 ห่างครั้งละ 1 ชม เป็นเวลา 7 วัน โดยสามารถกำหนด ตารางงานได้ว่าในชม ไหน จะมีอะไร

นี่คือคร่าวๆ

วันอังคารที่ 4 เมษายน พ.ศ. 2560

ฺBuilding Software II : APP จองห้องติว edite 6/4/2560

เป็น App สำหรับจองห้อง ติว หรืออาจจะเป็นสำหรับ จองห้องธรรมดาก็ได้

 - เลือกวัน และเวลา และห้องที่จะจองได้ โดยเบื้องต้นจะอ้างอิงกับ ห้องติวที่ linux
 - จองได้ไม่เกิน 3 ชม (หรืออื่นๆ)
 - แสดง ผล เพื่อให้เห็นว่ามีใครจองเวลาไหนไปแล้วบ้าง ในแต่ละวัน
 - แสดงเป็นรายเดือน ? หรือสัปดาห์ ดูย้อนหลังได้เฉพาะแอดมิน จองล่วงหน้าได้กี่วัน ?

 - จองล่วงหน้าได้ไม่เกิน 7 วันนับจากปัจจุบัน ไม่รวม แสดง วันเสาร์และอาทิตย์

Model ที่คิดว่าจะมี :

  1 . Room
            - room name
            - floor
            - building number
            - open time
            - close time
            - limit time

  2 . Reserve
           - for room
           - name reserver
           - date and time

1 reserver is only 1 hr ! cant reserve 30 min