Automated Testing: Process, Planning, Tool Selection

Kiểm thử thủ công được thực hiện bởi con người, ngay tại chỗ ngồivà trước máy tính, cẩn thận thực hiện các bước kiểm tra. Automation Testing nghĩa là sử dụng một công cụ tự động để thực hiện các test case. Các phần mềm tự động hóa cũng có thể nhập dữ liệu thử nghiệm vào System Under Test, so sánh ...

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

Chia sẻ Database giữa các application, sử dụng Content Provider

1. Giới thiệu về Content Provider Trong mô hình bảo mật Android, một ứng dụng không thể trực tiếp truy cập (đọc / ghi) dữ liệu của các ứng dụng khác. Mỗi ứng dụng có dữ liệu riêng và bộ nhớ riêng của mình. Content Provider chính là cách tốt nhất để chia sẻ dữ liệu giữa các ứng dụng. Ứng dụng ...

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

Một số biện pháp cải thiện performance của ứng dụng rails

Chúng ta đều biết rằng rails là 1 framework khá dễ sử dụng, ta có thể không cần nắm nhiều kiến thức lập trình mà vẫn có thể dễ dàng xây dựng 1 trang web, chỉ cần nắm qua một chút về gem, add-on... Tuy nhiên đó mới chỉ là dừng ở mức xây dựng 1 ứng dụng sơ khai. Khi đi vào tìm hiểu sâu về framework ...

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

tự tạo composer package cho php

Composer là ứng dụng giúp quản lý các thư viện bên ngoài trong project php. Composer giúp lập trình viên dễ dàng thêm, update, loại bỏ các thư viện một cách dễ dàng. Cài đặt Composer : thảm khảo tại https://viblo.asia/thangtd90/posts/jlA7GKWGKZQ2 của anh Tran Duc Thang Update php lên phiên ...

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

iOS Core Animation

Core Animation là engine tạo ra các nội dung trực quan trên màn hình, và nó có nhiệm vụ làm điều đó càng nhanh càng tốt. Các nội dung được chia thành lớp (layer) riêng biệt và được lưu trữ trong một hệ thống được gọi là cây lớp (layer tree). Cây này hình thành nền tảng cho tất cả các đối tượng ...

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

Vim Commands Cheat Sheet

Tổng hợp các lệnh thường dùng trong Vim Thoát :q[uit] Thoát Vim. Vô hiệu khi thay đổi chưa được lưu. :q[uit]! Thoát mà không lưu thay đổi. :cq[uit] Thoát luôn và không lưu gì cả. :wq Lưu file rồi thoát. :wq! Lưu lại file hiện tại rồi thoát. :wq {file} Lưu {file}. Thoát nếu không có ...

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

How to Use Instruments in Xcode - Part 1

Dựa trên hướng dẫn từ: http://www.raywenderlich.com/23037/how-to-use-instruments-in-xcode Getting Started Đối với tutorial này, chúng ta sẽ không làm việc theo kiểu tạo 1 app từ đầu mà thay vào đó chúng ta sẽ sử dụng 1 sample project. Nhiệm vụ của chúng ta là chạy app say đó cải thiện nó sử ...

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

Cấu trúc dữ liệu là trái tim của hệ Thống

Mở đầu Bạn nên chọn việc tạo ra cấu trúc dữ liệu phức tạp hơn là logic xử lý phức tạp. Thực tế cho thấy rằng cấu trúc dữ liệu phức tạp sẽ loại bỏ nhu cầu có logic xử lý phức tạp. Điều này sẽ đem lại một hệ thống nhanh hơn và có ít code để maintain hơn. Cấu trúc dữ liệu là ngôn ngữ chung mà ...

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

Metaprogramming Safely

Metaprogramming Safely Metaprogramming cung cấp cho bạn sức mạnh để có thể viết code một cách ngắn gọn và đẹp. Theo các bài viết mà mình viết trước đây về metaprogramming thì bạn có thể nhìn thấy một vài các bẫy. các tính năng dễ gây nhầm lẫn, lỗi khó hiểu trong mô hình đối tượng của Ruby. Nó ...

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

Tìm hiểu Websocket và xây dựng ứng dụng bidirectional chat

1. Websocket là gì? WebSoket là công nghệ hỗ trợ giao tiếp hai chiều giữa client và server bằng cách sử dụng một TCP socket để tạo một kết nối hiệu quả và ít tốn kém. Mặc dù được thiết kế để chuyên sử dụng cho các ứng dụng web, lập trình viên vẫn có thể đưa chúng vào bất kì loại ứng dụng nào. ...

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

Spring 4 +Hibernate(p1)

Đối với các dự án, việc thiết kế và viết mã để build database mất khá nhiều thời gian. Và việc update cấu trúc khiến cho người lập trình gặp nhiều trouble. Một tiện ích tuyệt với cho các lkv java , từ hibernate 3 trở đi, hibernate cung cấp cho phép dev tạo ra các entity cho databse và quản lý cấu ...

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

How To Test Software Without Any Requirements?

Tất cả các phần mềm có những yêu cầu và mục đích sử dụng của nó. Tuy nhiên, phần mềm mà không có tài liệu yêu cầu, tài liệu yêu cầu không đầy đủ, không chính xác hoặc là tài liệu đã lỗi thời... là một thực tế mà không may hầu hết chúng ta gặp phải, đó hẳn là điều mà chúng ta không hề mong muốn. Và ...

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

Tìm hiểu về zabbix (phần 3)

Trong bài này, ta sẽ tìm hiểu nốt về zabbix: gửi mail thông báo lỗi và tính năng auto discovery trên zabbix 1. Cài đặt SMTP để gửi mail Login vào zabbix admin: [administration] -> [Media Types] click "Email" Điền thông tin server smtp vào và click "Update" Nhiều item được cấu hình ...

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

(Basic) Implementing Tony Stark

Backgound Now that we have these two kind of things in our hand (see my previous article), why don't we just create something real from it. A living "instance" . A first living being in our universe. Something, or someone, we can put a name on. I'm thinking about it right now. And.. "Tony ...

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

Tìm hiểu về Security Testing

Tại sao phải kiểm tra bảo mật? Điều gì xảy ra nếu tất cả các tài liệu mật của tổ chức bạn bị đánh cắp, hoặc điều đó xảy ra với một trong những khách hàng của bạn? Một lỗ hổng trong ứng dụng của bạn hoàn toàn có thể làm tê liệt kinh doanh của bạn và danh tiếng của mình trên thị trường. Tất ...

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

Tìm hiểu về Full text search

Bình thường, khi chúng ta muốn tìm kiếm nội dung liên quan đến text, ta thường dùng câu query LIKE SELECT column_name FROM tables_name WHERE column_name LIKE pattern; Ví dụ khi muốn tìm kiếm 1 nội dung nào đó chứa từ thao thì ta hay làm thế này: Sử dụng LIKE, chúng ta chỉ phải tìm kiếm ...

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

The rails engine

What is Rails Engine? A Rails Engine is a stand-alone Rails app that can be mounted by another Rails app. This is acheived largely through namespacing. Controllers and models in a Rails Engine are defined within modules of the engine’s namespace. Simlarly, assets specific to the engine are ...

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

Giới thiệu google maps

Google maps là một dịch vụ ứng dụng và công nghệ bản đồ trực tuyến miễn phí được cung cấp bởi Google và hỗ trợ nhiều dịch vụ dựa vào bản đồ như Google Ride Finder và một số có thể dùng để nhúng vào các ứng dụng bên thứ ba thông qua Google Maps API. Nó cho phép thấy bản đồ đường sá, đường đi cho xe ...

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

Placeholder cho IE 8, IE 9

Việc phát triển một trang Web phải support những trình duyệt "cổ lỗ sĩ" như IE8 đúng là bài toán nan giải. Nhưng có những lúc chúng ta không làm không được. Trong bài viết này, tôi sẽ giới thiệu một kỹ thuật có thể làm IE8 hoạt động tính năng placeholder như các trình duyệt hiện đại. Các trình ...

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

Start Automation Testing on Your Project and Types of Automated Tests and Some Misconceptions About Test Automation

1. Automation test là gì? tại sao chúng ta cần nó Nếu một phần mềm có thể làm bất kỳ điều gì thì tạo sao chúng ta không tạo một chương trình để test tất cả các hệ thống? Điều này có hợp lý đối với bạn? nếu đúng thì chính là bạn đang nghĩ tới automation testing. Hãy tưởng tượng bạn đang ...

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