Các định nghĩa và thuật ngữ trong kiểm thử phần mềm (Phần 2)

Các định nghĩa và thuật ngữ trong kiểm thử phần mềm (Phần 2) (Link phần 1: https://viblo.asia/nguyen.thu.phuong/posts/MJyGjQlqvPB) H Hazard analysis - Phân tích nguy hại : Một kỹ thuật được sử dụng để mô tả các yếu tố rủi ro (risk). Kết quả của phân tích nguy hại sẽ ...

Tác giả: Trịnh Tiến Mạnh viết 14:04 ngày 12/08/2018

Cross-Site Scripting (XSS)

Nhiều người nghĩ Cross-Site Scripting không hề nguy hiểm, có lẽ vì họ nghĩ XSS đơn giản chỉ là sử dụng javascript tạo ra một hộp thoại thông báo. Cũng vì lý do đó mà nhiều Web-master thường chủ quan khi không lọc dữ liệu vào – ra (input – output). Trong bài này mình sẽ tìm hiểu lỗ hổng XSS nó ...

Tác giả: Bùi Văn Nam viết 14:04 ngày 12/08/2018

[The mythical man-month] The Surgical Team - Nhóm Phẫu Thuật

Tiếp nối chương 2 của cuốn The mythical man month, chúng ta đến với chương số ba của cuốn sách này, nói về cách xây dựng một nhóm làm việc hiệu quả. Trong một cuộc hội thảo về công nghệ thông tin, chúng tôi được nghe đi nghe lại ý kiến của những quản lý trẻ, rằng họ thích các nhóm nhỏ, với những ...

Tác giả: Tạ Quốc Bảo viết 14:04 ngày 12/08/2018

Tìm hiểu chuẩn bảo mật U2F và UAF

U2F và UAF đang là 2 chuẩn bảo mật được các hãng công nghệ nghiên cứu và đưa vào khai thác rộng rãi trong thời gian ngắn tới đây. Vậy, chuẩn bảo mật này hoạt động thế nào, bảo mật ra sao và chúng có những đặc điểm gì hấp dẫn cũng như cách chúng bảo vệ dữ liệu người dùng? I. Nhu cầu cho U2F và ...

Tác giả: Hoàng Hải Đăng viết 14:04 ngày 12/08/2018

Giải pháp Big Data - Hadoop

1. Big data là gì? Với sự phát triển không ngừng của mang xã hội, sự ra đời của các thiết bị mới tiên tiến, mọi hoạt động thường ngày đang dần được internet hóa. Dẫn đến lượng thông tin ngày càng đa dạng đã đặt ra thách thức cho các nền công nghiệp khác nhau phải tìm một phương pháp khác để xử ...

Tác giả: Tạ Quốc Bảo viết 14:04 ngày 12/08/2018

Grape API endpoint

Trong việc làm API, việc dùng gem Grape khá phổ biến (https://github.com/ruby-grape/grape), hiểu rõ hơn về endpoint trong Grape sẽ làm ta chủ động hơn trong việc dùng gem này. Endpoint có thể chia là 2 loại, error endpoint và success endpoint. A. Error endpoint Đơn gỉan là endpoint trả về từ ...

Tác giả: Bùi Văn Nam viết 14:04 ngày 12/08/2018

Try to use turnip_support gem

turnip-support is a gem that support testing features of Rails applications using turnip, rspec and headless browser. Now i will show an example to test Rails application with turnip_support gem. Design database Role id name User id name login_id role_id password ...

Tác giả: Hoàng Hải Đăng viết 14:04 ngày 12/08/2018

Tracking SQL queries in Rails

Trong quá trình phát triển, và đặc biệt là giai đoạn tối ưu của một app Rails, một trong những vấn đề được quan tâm nhất là về các SQL query. Bất cứ ai cũng từng đặt ra các câu hỏi như: Để thực hiện một request này cần bao nhiêu query? Để chạy hết số query đấy mất bao lâu? SQL query nào là ...

Tác giả: Bùi Văn Nam viết 14:04 ngày 12/08/2018

TOP 16+ Usability Testing Tools để thử nghiệm ứng dụng web của bạn

Trong thời đại ngày nay của việc số hóa, trang web là cách thuận tiện nhất để truy cập số lượng lớn các thông tin dưới dạng các tài liệu, hình ảnh, liên kết, vv.. Kiểm tra các trang web bằng cách sử dụng công cụ kiểm tra khả năng sử dụng trước khi đưa nó trong môi trường sống. Trang web thu hút ...

Tác giả: Hoàng Hải Đăng viết 14:04 ngày 12/08/2018

Tìm hiểu về command grep

Với người dùng hệ điều hành Linux thì command grep không phải quá xa lạ. Với grep có thể giúp chúng ta tìm kiếm nhanh hơn và chính xác hơn, dễ tùy biến option search .Hôm nay mình xin chia sẻ một số option của grep 1.Grep? 「grep」 là command hiển thị line chứa chuỗi kí tự trong file .Có thể ...

Tác giả: Hoàng Hải Đăng viết 14:04 ngày 12/08/2018

Coroutines

Khi ta gọi một hàm, nó sẽ chạy đến khi hoàn thành hết các câu lệnh rồi mới return. Điều này có nghĩa là bất kì 1 hành động nào được đặt trong hàm sẽ phải được thực hiện chỉ trong 1 lần update frame. 1 lần gọi hàm không thể được sử dụng để thể hiện các bước của 1 animation hay 1 chuỗi các sự kiện. ...

Tác giả: Hoàng Hải Đăng viết 14:04 ngày 12/08/2018

Part3- Một số thuộc tính của Selenium Python Bindings

Ở bài viết trước các bạn đã biết căn bản về Selenium Python và một số thuộc tính Navigating, Interacting with the page, Filling in forms, Drag và Drop, Moving between windows and frames, Popup dialog, Navigation: History and location, Cookies, Locating Elements thông qua bài viết: https://viblo.asi ...

Tác giả: Tạ Quốc Bảo viết 14:04 ngày 12/08/2018

Giả lập kết nối mạng yếu trên các thiết bị iOS

Bạn đã từng và đang lập trình các ứng dụng cần có kết nối internet, và bạn đang không biết làm cách nào để giả lập kết nối mạng để test các trường hợp kết nối đến server? Bài viết này sẽ giúp bạn có thêm kinh nghiệm về việc tạo ra các kết nối có tốc độ khác nhau sử dụng các thiết bị iPhone, iPad và ...

Tác giả: Trịnh Tiến Mạnh viết 14:04 ngày 12/08/2018

Redux middleware

Middleware có thể sử dụng cho nhiều mục đích khác nhau bao gồm gọi API không đồng bộ. Nó cung cấp một bên thứ ba để can thiệp vào giữa thời điểm dispatch một action và thời điểm action được chuyển đến reducer Redux middleware sẽ chặn lại các action để can thiệp và chỉnh sửa action đó hoặc nó có ...

Tác giả: Bùi Văn Nam viết 14:04 ngày 12/08/2018

Vai trò của người quản lý dự án trong Agile

Agile, theo như các sách không nói đến vai trò người quản lý nhưng nói về người huấn luyện/người tạo thuận lợi. Bài viết này lần đầu tiên giải thích vai trò của người quản lý dự án nói chung trong bất kỳ lĩnh vực nào và sau đó là có gắng chỉ dẫn nó với vai trò người huấn luyện/ người tạo điều kiện ...

Tác giả: Trịnh Tiến Mạnh viết 14:03 ngày 12/08/2018

Tìm hiểu về các constructor của View trong Android

Như các bạn đã biết, 1 View cơ bản trong Android sẽ có 4 constructor, tuy nhiên chúng ta lại chưa hiểu rõ về việc từng param trong các constructor đó để làm gì? Hay chúng ta cần phải implement constructor nào khi subclass 1 View? Tóm tắt 1 vài điểm quan trọng nếu bạn lười đọc: Sử dụng ...

Tác giả: Bùi Văn Nam viết 14:03 ngày 12/08/2018

5 bí quyết kiểm soát và mở rộng nội dung

_Dù bạn đang hoạt động kinh doanh theo mô hình B2C hay B2B, nhu cầu về nội dung chất lượng cao không bao giờ kết thúc. Theo nghiên cứu mới đây, các phương tiện truyền thông trực tuyến ngày càng được quan tâm, bởi những người tiêu dùng cá nhân và các doanh nghiệp. Để không bị bỏ lại phía sau trong ...

Tác giả: Trịnh Tiến Mạnh viết 14:03 ngày 12/08/2018

Rails Polymorphic Associations

Chắc chắn đầu tiên chúng ta muốn biết liên kết polymorphic là gì? Nó là nơi mà một mô hình ActiveRecord có thể belong to nhiều hơn một model khác. Như trường hợp chiếc oto của bạn phụ thuộc bạn hay một người nào đó, trong khi các xe khác có thể phụ thuộc nhiều xe hay doanh nghiệp. 1. Tại sao ...

Tác giả: Hoàng Hải Đăng viết 14:03 ngày 12/08/2018

BroadcastReceiver Trong Android (Part2)

1. Giới thiệu Như trong bài viết Broadcast Receiver Part1 mình đã giới thiệu cách bắt các sự kiện của hệ thống như tin nhắn...Trong bài viết hôm nay mình xin giới thiệu với các bạn cách bắt 1 sự kiện do chính chúng ta tạo ra 2. Demo ứng dụng Mình sẽ demo 1 ứng dụng rất đơn giản là cộng 2 ...

Tác giả: Hoàng Hải Đăng viết 14:03 ngày 12/08/2018

Đa ngôn ngữ trong lập trình iOS

Internationalization là một khái niệm không hề mới nhưng tầm quan trọng của nó trong việc tạo nên một ứng dụng mang tầm quốc tế là không hề nhỏ. Internationalization là gì? Về cơ bản mà nói thì đây chính giai đoạn thiết kế app với khả năng tương thích quốc tế. Vậy công việc của 1 developer chính ...

Tác giả: Tạ Quốc Bảo viết 14:03 ngày 12/08/2018