Welcome to
Thuyen's corner
-
Dealing With Flaky UI Tests in iOS
1. Introduction UI testing is a test technique, besides unit testing, to ensure product quality. While unit testing focuses on small portions (or units) of the system, UI testing aims to cover a wider user journey in the app. This testing technique helps engineers gain more confidence when developing, refactoring, and shipping the products to users. In the context of iOS development, UI testing plays a key role in product quality as the form of a feature shipped to users is usually through what they see on the app.
-
Tản Mạn - 2021H1
Chuyện là hồi xưa lên Google gõ tên mình thì cái blog của mình sẽ xuất hiện đầu tiên trên danh mục kết quả tìm kiếm. Nhưng hôm hổm gõ mãi mà không thấy Thuyen’s Corner đâu hết. Ấy là khi tui biết đã quá lâu chưa ghé qua phủi bụi cái góc này… Hôm qua có ông anh chụp hình một bài viết của mình ở trển, gửi cho mình, ngụ ý nhắc nhẹ là “ê, sao hổng viết tiếp đi”.
-
Tản Mạn: Những Trăn Trở Nghề
Nhiều người thấy mình dạo này có vẻ chill, chơi môn này môn nọ, tham gia thử thách này thử thách kia, tưởng rằng mình đang tận hưởng cuộc sống. Nhưng thật ra mình, cũng như bao người khác, luôn có những trăn trở nhất định. Bỏ qua những trăn trở về gia đình và cuộc sống riêng tư, nay mình xin trải lòng với mọi người những trăn trở của mình về nghề nghiệp.
-
CI: Heuristically Extracting Test Methods Before Runtime
1. Introduction Reducing pipeline time is a key problem in the pipeline time reduction epic. As mentioned in the previous post, this can be done by dividing tests in the project into smaller sets and run them in parallel CI jobs (sometimes called runners). The assignment of what tests to what jobs usually takes place at the end of the build job, before tests being executed. In order to assign/distribute tests to runners, we must know what tests we have.
-
CI: Thinning iOS Build Artifacts
1. Introduction 1.1. Pipeline Time Improvement As engineers, we always want to land our change on master as quickly as possible. Apart from the time it takes to resolve code review comments from peers, there’s one constraint engineers have to face before getting their changes merged. That constraint is the CI pipeline time (ie. the time it takes for a CI pipeline to run against certain changes). For iOS development, a typical CI pre-merge pipeline usually involves building the project, then running unit tests and UI tests.
-
Tản Mạn: Chuyện Nghề
Tuần này sẵn có một ngày lễ (public holiday) nên mình xin nghỉ luôn 4 ngày còn lại cho đủ nguyên tuần. Cộng thêm mấy ngày cuối tuần nữa thành ra mình nghỉ nguyên một lèo 9 ngày. What a long holiday! Tưởng là dài vậy mà nó trôi qua nhanh cái rẹt, chuẩn bị quay lại mần việc rồi. Mình tranh thủ viết chút xíu nhân dịp đầu óc vẫn còn thư thái, thoải mái.
-
📝 Looking Back on 2020H1
June is coming to an end soon… It’s the end of month, the end of quarter, and also the end of the first half. It’s time to look back on what I have done so far. About future plans, I’d like to leave it open. Work 1 My work interest gradually shifted away from iOS. I have to admit that after a few years working as an iOS engineer, I started to like iOS a little less.
-
Tản mạn: Chuyện Tiếng Anh (p2)
Ở post lần trước, mình có tản mạn sương sương với mọi người về chuyện học tiếng Anh. Trong bài viết lần này mình sẽ nói chút xíu về tiếng Anh sử dụng trong cuộc sống của mình ở Sing. 1 Lúc mình mới qua, mình hơi bối rối với tiếng Anh của người Sing. Vì chưa quen accent bên này nên đôi lúc không biết người ta đang nói tiếng Anh hay tiếng Hoa.
-
Tản mạn: Chuyện Tiếng Anh (p1)
Một ngày đẹp trời (thật ra trời không đẹp cho lắm, mà đẹp cũng không ai ngắm), lướt FB, coi youtube thấy tràn ngập những chia sẻ, bình luận về một vụ việc làm dậy sóng cộng đồng IELTS. Sự việc, tuy đọc vào thấy kì khôi thiệt, nhưng cũng chẳng ảnh hưởng nhiều tới mình… Duy có điều là, tự dưng thấy người ta quan tâm nhiều, kế tự ngẫm nghĩ về cái sự học tiếng Anh của bản thân, kế thấy hơi chột dạ chút xíu.
-
When Project Labels are not Just to Categorize Things
Whether you are a fan of Github, Gitlab, BitBucket, or any git-based repo hosting platform, I am sure you must be farmiliar with project labels. Categorizing (Messy) Project Issues A common use case of project labels is to categorize project issues of a repo. For engineering discussion, we use Slack (or any alternative for instant messaging platform) only for quick discussions. Those usually end shortly. If such a discussion become lengthy, probably you used the wrong communication channel 😀?