• Automation

    Mouse hover action in Selenium

    The below code will show you how to hover on an item (Logout WordPress blog).

    Test steps:

    1. Go to http://localhost/selenium-digitest/wp-login.php
    2. Enter username: “admin”
    3. Enter password: “123456”
    4. Click Login
    5. Hover on admin main bar at top
    6. Select Log out.

     

  • Testing

    Test case design techniques: Boundary value analysis

    Bài trước chúng ta đã tìm hiểu về Equivalence partitioning (Phân vùng tương đương), đó là phương pháp chia các điều kiện đầu vào thành những vùng tương đương nhau. Tất cả các giá trị trong một vùng tương đương sẽ cho một kết quả đầu ra giống nhau. Vì vậy chúng ta có thể test một giá trị đại diện trong vùng tương đương.

    Tuy nhiên cách này có một khuyết điểm là không bao quát được hết các giá trị nằm ở biên, mà phần lớn các lỗi được tìm thấy khi kiểm tra giá trị ở biên của các phân vùng. Đây cũng là lý do chúng ta nên tìm hiểu thêm một kỹ thuật nữa là Boundary value analysis (phân tích giá trị biên).
    Boundary value analysis

    Ví dụ yêu cầu là nhập [6 đến 12] ký tự. Thì ta có các phân vùng tương đương như sau:

    —(invalid)— 6 —(valid)— 12 —(invalid)—

    1. Invalid: Dưới 6
    2. Valid: 6 đến 12
    3. Invalid: trên 12

    Đầu tiên chúng ta xác định biên của các vùng giá trị đó. Ở đây ta có thể thấy được hai số “6” và “12” là biên.

    Để phân tích giá trị biên căn bản chúng ta dùng cách tính:
    Giá trị biên nhỏ nhất – 1
    Giá trị biên nhỏ nhất
    Giá trị biên lớn nhât
    Giá trị biên lớn nhất + 1

    Ngoài ra, để chắc chắn và bao quát testcase hơn bạn có thể dùng cách tính sau:
    Giá trị biên nhỏ nhất – 1
    Giá trị biên nhỏ nhất
    Giá trị biên nhỏ nhất + 1
    Giá trị biên lớn nhât – 1
    Giá trị biên lớn nhât
    Giá trị biên lớn nhất + 1

    => Vậy với bài toán phía trên: [6 đến 12] ký tự. Ta sẽ có các case sau:
    Giá trị biên nhỏ nhất – 1: 5
    Giá trị biên nhỏ nhất: 6
    Giá trị biên lớn nhât: 12
    Giá trị biên lớn nhất + 1: 13

    Hoặc

    Giá trị biên nhỏ nhất – 1: 5
    Giá trị biên nhỏ nhất: 6
    Giá trị biên nhỏ nhất + 1: 7
    Giá trị biên lớn nhât – 1: 11
    Giá trị biên lớn nhât: 12
    Giá trị biên lớn nhất + 1: 13

  • Blog

    Mục tiêu lớn và những nỗi buồn nho nhỏ

    Chú thích:
    [1] Viết tặng.
    [2] Bỏ qua note này nếu bạn đang vui và không có gì phải suy nghĩ.
    [3] Đọc tiếp note này nếu bạn đang chán, mất định hướng, cảm thấy mọi thứ thật khó khăn.

    // Nói vậy thôi, chứ note là note, sẽ không có tác dụng thay thế thuốc :))
    Ok, mở bài vậy là được rồi, mình xin đi nhanh vào thân bài để còn kết luận nữa!


    Nói ngắn gọn, nếu bạn hay buồn và cảm thấy mọi thứ khó khăn đối với mình thì có lẽ bạn đang trong trạng thái không có mục tiêu và không biết mình muốn làm gì trong thời gian tới. Việc không định hướng ảnh hưởng rất lớn đến tâm trạng và tâm lý mà bạn chưa nhận ra hay quan tâm nhiều.

    Ví dụ cho dễ hiểu: Nếu bạn đang theo đuổi và muốn làm quen một cô gái -> trong trường hợp này bạn biết rõ mình thật sự muốn gì và thích gì.

    – Vậy bạn có từ bỏ việc theo đuổi nếu cô gái ấy từ chối trong buổi hẹn hò đầu tiên? chắc chắn là không, bạn sẽ chuẩn bị để rủ ở một lần khác.
    – Bạn có giận dữ nếu cô gái nói bận, chat sau với bạn? chắc chắn là không, chuyện quá bình thường, chat sau thì chat sau.
    – Bạn có chấp nhận thất bại nếu sau một hai lần tỏ tình mà kết quả vẫn là bạn? chắc cũng không, nếu đã hai lần thì bạn sẽ nghĩ: ráng lần nữa, bất quá tam mà – và rồi sau đó lại động viên bản thân thêm vài lần nữa.
    – Tuy nhiều lúc buồn thiệt, nhưng sau những nỗi buồn trong lòng bạn lại muốn tiếp tục…vì bạn yêu.

    Vậy khi có một đam mê, có một mục tiêu nào đó mà bản thân Mong muốn thật sự bạn sẽ không thể từ bỏ, không giận, không chấp nhận thất bại và vượt qua nỗi buồn để theo đuổi nó.

    Đam mê & giấc mơ cũng vậy.

    Có rất nhiều thứ làm bạn muốn từ bỏ.
    Có rất nhiều thứ làm bạn giận.
    Có rất nhiều thứ làm bạn cảm thấy thất bại.
    Có rất nhiều thứ làm bạn buồn.

    Nhưng điều đó không quan trọng, quan trọng là bạn đã có mục tiêu nào đó lớn cần làm hay chưa?

    Nếu chưa, mọi thứ đều là trở ngại.
    Nếu có, mọi thứ trở thành thử thách.

    Giấc mơ lớn như một cô gái dễ thương, cô ấy luôn muốn thử thách bạn, để chắc rằng bạn không phải dạng người theo đuổi hời, có cũng được không có cũng được, cô ấy cần một người quyết tâm bằng được để chứng tỏ tình yêu.
    Bạn không cần cho người khác biết giấc mơ và kế hoạch lớn của mình, chỉ cần bạn vượt qua được những “nỗi buổn nho nhỏ”.

    “Your time is limited, so don’t waste it living someone else’s life. Don’t be trapped by dogma – which is living with the results of other people’s thinking. Don’t let the noise of other’s opinions drown out your own inner voice. And most important, have the courage to follow your heart and intuition. They somehow already know what you truly want to become. Everything else is secondary.” – Steve Jobs

    Vậy đó – Mục tiêu lớn và những nỗi buồn nho nhỏ.

    blog-1

  • Testing

    Test case design techniques: Equivalence partitioning

    Phân vùng tương đương là phương pháp chia các điều kiện đầu vào thành những vùng tương đương nhau. Tất cả các giá trị trong một vùng tương đương sẽ cho một kết quả đầu ra giống nhau. Vì vậy chúng ta có thể test một giá trị đại diện trong vùng tương đương.

    Ví dụ:

    – User ký tự chữ với độ dài trong khoảng [6-20]
    – Nếu nhập giá trị với số ký tự không nằm trong khoảng [6-20] => hiển thị lỗi “Không hợp lệ”.
    – Nếu để trống ô hoặc nhập ký tự khác ký tự chữ => hiển thị lỗi “Tên người dùng chưa hợp lệ!”

    * Từ yêu cầu trên ta có thể phân ra làm các phân vùng như sau:
    + Phân vùng 1: Nhập giá trị hợp lệ từ 6 => 20.
    + Phân vùng 2: Nhập giá trị không hợp lệ < 6 ký tự.
    + Phân vùng 3: Nhập giá trị không hợp lệ > 20 ký tự.
    + Phân vùng 4: Trường hợp để trống không nhập gì hay nhập ký tự không phải dạng chữ.

    => Từ các phân vùng ta có được các testcase như sau:
    + Case 1: Nhập giá trị từ 6 đến 20 => pass.
    + Case 2: Nhập giá trị < 6 ký tự => hiển thị lỗi.
    + Case 3: Nhập giá trị > 20 ký tự => hiển thị lỗi.
    + Case 4: Để trống không nhập gì hay nhập ký tự không phải dạng chữ => hiển thị lỗi.