I'm rewriting a test for a family of products that include multiple 10/100/1000-T Ethernet interfaces (2 or 5) built into our system's main board.
The existing test code uses CLI commands to query the operational state, speed and duplex state of the interfaces.
It turns out that the various standard linux style commands don't really return the state of the interfaces; they always appear as UP and 1000 and full. No one performed negative test cases or combinational testing to see if the auto-negotiation was working.
There is a second 'ping' test where the Ethernet ports are assigned IP addresses and a second NIC in the test station is connected to a hub that is in turn powered on and off to see if the ports pass traffic. A bit cludgy, but that seems to work.
I found I can use a REST interface on the UUT to query the current state of the interface, but I need programmatically configurable source ports to 'wiggle' the inputs.
I found this TP-LINK TL-SG3216 managed switch that includes a CLI that can be accessed via telnet, but I am a bit concerned about the long term reliability and repeatability of a consumer grade device being used as test equipment.
I'll be testing a worst case of 50 UUTs a day, and would expect this to be in place for a few years. I'll have between 4 and 8 stations in various locations.
Anyone have any experience with Ethernet interface testing that they would like to share?