
Chương 2: Locators
Locators(Định vị) cho phép tìm kiếm các phần tử trên trang, phục vị cho việc test. Ở chương trước, ta đã thành công khi làm việc với trang web có 1 vài locators. Ở HTML, thật tuyệt vời khi tất cả mọi phần tử bạn muốn tương tác đều có thuộc tính ID và Name . Nhưng không may là việc lấy chúng ...

3 câu lệnh hữu ích trong Javascript mà bạn nên biết
Bài viết này mình có tham khảo từ đây Như bạn đã biết, các câu lệnh javascript có khả năng thực hiện được nhiều kiểu logic khác nhau trong code của chúng ta. Bạn có thể xem thêm về các câu lệnh đó tại đây. Mỗi câu lệnh lại có một mục đích sử dụng và cú pháp khác nhau. Theo như thống kê này thì ...

Introducing Jasmine for beginners
Some programer always think that testing isn't important and wast time to pay attention on them. In contract, it's the big mistake that you write a programe without testing. Testing is a good way that you can describe or show another people about your code and how it works. In addition, you can ...

ArrayList: How does increasing size work?
Hi everyone, Today, I'm back with a basic question about ArrayList. As we know ArrayList is a resizeable array, that means an array list are created with initial size and its size can be increased as needed. But, have you ever wondered about default initial size of an array list, how increasing ...

AngularJS - Tips may you don''t know
AngularJS gonna to celebrate the sixth birthday in this October and I think spending time to talk about's just waste time. It's too famous and influence to many modern Front-End framework and its fan number's increasing significantly day by day. However, there's no problem when your code's a ...

Ruby - WebSockets (Phần 2)
Tài liệu: Building a simple websockets server from scratch in Ruby Nội dung bài viết: Xây dựng một ứng dụng đơn giản về websockets server trong Ruby Xây dựng một ứng dụng đơn giản về websockets server trong Ruby Ngày nay websockets ngày càng được sử dụng nhiều, chúng ta đã từng nghe thấy rằng ...

Sử dụng Decision table - Bảng quyết định trong kiểm thử phần mềm
Kỹ thuật Equivalence partitioning - Phân vùng tương đương và Boundary value analysis - Phân tích giá trị biên thường được áp dụng cho các tình huống hoặc đầu vào cụ thể. Tuy nhiên, nếu kết hợp các yếu tố đầu vào và thực hiện các hành động khác nhau, thì điều này có thể khó khăn hơn khi sử dụng 2 kỹ ...

Kỹ năng báo cáo và liên lạc
Khi mới bước chân vào công ty, nhất là làm việc trong môi trường công ty Nhật thì thường được nói nhiều về việc báo cáo và liên lạc. Trước đây mình đã tham gia vào một khóa học ngắn đào tạo nền tảng ban đầu về kiểm thử phần mềm tại dự án đào tạo TesterToday. Ngoài các kiến thức lý thuyết và thực ...

Phát hiện và đo khoảng cách tới vật thể với Raspberry Pi và cảm biến HC-SR04
Hẳn các bạn đã biết tới máy tính siêu nhỏ Raspberry Pi với hàng loạt những ứng dụng của nó trong cuộc sống, để tận dụng được sức mạnh của Raspberry Pi ta cần tới những cảm biến để giúp nó cảm nhận được thế giới bên ngoài. Trong bài này mình sẽ giới thiệu và demo cảm biến HC-SR04 sử dụng với ...

Một vài lưu ý khi sử dụng Shell Script (phần 1)
I. 2>&1 hoạt động ra sao ? Khi lập trình, chúng ta thường sử dụng một số câu lệnh như điều đương nhiên để giải quyết một vấn đề, nhưng lại không hiểu rõ bản chất của chúng. Với Shell Script cũng vậy, có những thứ phổ biến đến mức chúng ta chỉ việc dùng mà chả tìm hiểu thế nghĩa là sao, ví ...

Javascript Under The Hood ~ Object Oriented Javascript ~
Phần 1: The Mysterious Parts Javascript ngày nay đã trở thành một trong những ngôn ngữ lập trình phổ biến nhất thế giới, tuy nhiên có một điểm lạ là nó cũng chính là một trong những ngôn ngữ "khó hiểu", hay "dễ bị hiểu nhầm" nhất. :v Series Javascript Under The Hood sẽ đưa đến cho các bạn ...

Machine state và cách dùng trong rails
I. Tổng quan về machine state Machine state là một biểu đồ trạng thái. Nói dễ hiểu hơn, nó là cách để kiểm soát các trạng thái theo điều kiện tương ứng. Ví dụ bạn có một tập các trạng thái khác nhau, tùy thuộc vào điều kiện và trạng thái hiện tại, bạn sẽ có các hành động khác nhau trong thời ...

Agile và văn hóa Việt Nam
Bên lề bài viết Tôi có cơ hội được làm việc với một khách hàng người Nhật trong một thời gian khá dài. Bác ấy là một người khá đặc biệt, và có phần hơi "Tây" so với những thuyết giáo và phong cách vốn là đặc điểm đặc biệt của người Nhật. Bác đã đi làm hơn 20 năm trong nghành phần mềm, tuy ...

Ý nghĩa của typography trong thiết kế
So với màu sắc và hình khối, typography hay cách sử dụng chữ trong sáng tạo đôi khi bị nhiều designer xem nhẹ. Vậy liệu một yếu tố đơn giản như font chữ có thể làm thay đổi ý nghĩa của câu chữ và toàn bộ thiết kế? Chắc chắn rồi! Lựa chọn một kiểu chữ phù hợp có thể đem đến hiệu quả mạnh mẽ khi nhấn ...

Xin đừng đánh nhau với Framework
Xin bắt đầu bằng câu chuyện rùa và thỏ. Phiên bản 1: Như mọi người đã biết, rùa thắng thỏ vì rùa rất chăm chỉ, chậm và chắn chắn. Sau khi thua rùa, thỏ ta rất cay cú nói với thỏ con: "Đời cha đã thua rùa vì không chăm chỉ, đời con, con nhất định phải lấy lại danh dự cho nhà Thỏ, không ...

Mobile Testing: Hướng dẫn tổng quát khi test apps trên Mobile
Một số hoặc tất cả các loại kiểm thử sau đây có thể được thực hiện tùy thuộc vào yêu cầu kiểm tra mobile của bạn Functional testing - Kiểm thử chức năng Performance testing - Kiểm thử hiệu suất Security testing - Kiểm thử bảo mật Usability testing - Kiểm thử tính khả dụng Compatibility ...

Strip vs Squish
Sample " hello world " . strip = > "hello world" " hello world " . squish = > "hello world" What's difference? Strip Ruby method Returns the string, remove white spaces only at the leading and trailing Squish Rails method Returns the string, ...

Những dấu chân của nhân loại trên con đường đến với lập trình hướng đối tượng (phần 2)
Ẩn dữ liệu (hiding data) và đóng gói thông tin (encapsulation) Kể cả đối với object composition của ngôn ngữ C, bằng việc tách biệt việc define và implement của header file chúng ta vẫn có thể ẩn những thông tin bên trong kiểu dữ liệu trừu tượng. Tuy nhiên, sau này người ta đã dần dần hỗ ...

Let Build Single Page App - Part III
In Part II we have built API end point that needed for implementing authentication system. In this part we'll be focusing on building user interface using that end point with ReactJS. As usual you can find source code here. Now without any further ado lets get started. Routing Configuration ...

Google Firebase - Phần 2
Như bài giới thiệu trước mình đã chia sẻ về Google Firebase một dịch vụ cơ sở dữ liệu thời gian thực hoạt động trên nền tảng đám mây được cung cấp bởi Google nhằm giúp các lập trình phát triển nhanh các ứng dụng bằng cách đơn giản hóa các thao tác với cơ sở dữ liệu. Các bạn có thể xem lại ở đây: ...