This one describes interesting bug and how I used what I learned on BBST Foundations course to solve it.
Test script in Ruby opens a file with test data. It throw following exception:
No such file or directory @ rb_sysopen
Let’s use comparable tool, windows explorer (an Oracle). File is present. Let’s open it in Chrome. I got following error:
Your file was not found. It may have been moved or deleted. ERR_FILE_NOT_FOUND
BBST Foundations states in lesson 3 Oracles that we always create a model of System Under Test. Here is expanded Testing Model by D. Hoffman:
Files are part of Environmental Inputs. In order to open a file we need to provide file PATH. What is operating system property for my environment?
My previous experience alarmed me that Windows MAX_PATH has length limit of 260 characters. For example Linux has MAX_PATH of 4096 characters.
Solution to this issue was to move files closer to file system root, and on Windows, this is c: drive.
When Ruby tries to open a file, it uses operating system API, and API returned false error message: file not found.
More useful error would be: MAX_PATH exceeded.
BBST provided me blocks of knowledge information that I used when I encounter testing problems. In other words, that course taught me to critically think.
Also published on Medium.