zoukankan      html  css  js  c++  java
  • a* products

    Experience of black-box testing on set-top-boxes/IP-connected devices, games consoles and tablets

    http://www.tested.com/tech/set-top-boxes/

    Streaming media,是指將一連串的媒體數據壓縮後,經過網路分段傳送數據,在網路上實時傳輸影音,以供觀賞的一種技術與過程。

    Amazon Instant Video (formerly Amazon Video On Demand and LOVEFiLM Instant) is an Internet video on demand service by Amazon in the United States, United Kingdom, Germany and Japan. It offers television shows and films for rental and purchase, as well as free to customers with an Amazon Prime subscription.主要透過 PC、平板電腦、手機這樣的終端,獲取點播或者下載觀看服務。

    Amazon Fire TV is a digital media player and microconsole developed by Amazon.com.It is a small network appliance and entertainment device designed to stream digital audio/video content to a high-definition television. The device also allows users to play video games with the included remote, via a mobile app, or with an optionalgame controller. The device features 2 GB of RAM, MIMO dual-band Wi-Fi, and a Bluetooth remote control with a microphone for voice search. It supports 1080p streaming and Dolby Digital Plus 5.1 surround sound. Unveiled on April 2, 2014, the Amazon Fire TV was made available for purchase the same day for US$99.

    Functions: Play movie(buffering time, clear), Voice search, Play game(game controller), Switch between TV and Kindle Fire, Connect to TV and wifi easily, Remote control(buttons), Play music(background, also do other things), Photos(available within seconds after you upload it to cloud drive), Profiles for kids,

    GUI testing: Search/Home/Movie/Photos/Apps...Layout, Navigation, Font/Color/Size, 

    Compatibility: Compatible with high-definition TVs with HDMI capable of 1080p or 720p at 60/50Hz, including popular HDCP-compatible models from these manufacturers: Hitachi, JVC, LG, Mitsubishi, NEC, Panasonic, Philips, Pioneer, Samsung, Sharp, Sony, Toshiba, Vizio, Westinghouse. Dual-band, dual-antenna Wi-Fi (MIMO) for faster streaming and fewer dropped connections than standard Wi-Fi. Supports 802.11a/b/g/n Wi-Fi networks. 

    Contents format supported: Video: H.263, H.264, MPEG4-SP, VC1
    Audio: AAC, AC-3, E-AC-3, HE-A, PCM, MP3
    Photo: JPG, PNG

    Battery.

    Set-box test automation:

    Stb-tester issues commands to the device under test in the same way a real user does (infrared signals to a set-top box, or taps & swipes on a mobile device, etc).

    press("MENU")
    wait_for_match(Guide.png)

    Example test script

    Stb-tester then checks the behaviour of the device under test by analysing the device’s video output: checking that a particular user interface element appears or disappears, that video plays or pauses, or using optical character recognition to read on-screen text.

    The reports contain video recordings of each test run. You can configure stb-tester to gather logs from the device-under-test (for example if you have serial access) or other logs related to the test (for example network traces); these logs appear in the report under the relevant test run. You can also configure the report to display any particular data; for example if you’re soak-testing a channel-change test, you might want the duration of the channel-change to appear as a column in the report, so that you can sort by that column and instantly find the test results worth analysing.

    http://www.tcs.com/SiteCollectionDocuments/White%20Papers/tcs_telecom_whitepaper_STBTESTING.pdf

    Thesis:

    I am solid in video compression algorithms and H.264 standard. H.264 standard: macroblocks->Luminance/Color, Prediction mode->Inter/Intra, Residual block is transformed(Integer Discrete cosine transform, convert residual from spatial domain to frequency domain), quantized(in-significant high-freq data becomes zeros), and entropy coded(zigzag scanning). Decompression: Entropy decoder first decodes the compressed bitstream to produce quantized coefficients as well as header information, then dequantization, inverse transformed, add to the prediction signal to form the restored macroblock.

    My first research work was on improving the interpolation filter for sub-pixels when performing motion estimation to reduce redundancy between transmitted frames and current frame. In H.264, fixed interpolation filter is adopted, while Adaptive IF is estimated for every image. But AIF takes the whole image into account to calculate wiener filter, my proposal is to only include those high-frequency area to generate filter coeff. We use Bjontegaard Delta bit rate and Bjontegaard Delta Peak signal to noise ratio for measurement.

    My second research topic was on improving combined inter-intra prediction by tuning weighted coefficients according to the image characteristics.

    • An entropy coding design including:
      • Context-adaptive binary arithmetic coding (CABAC), an algorithm to losslessly compress syntax elements in the video stream knowing the probabilities of syntax elements in a given context. CABAC compresses data more efficiently than CAVLC but requires considerably more processing to decode.
      • Context-adaptive variable-length coding (CAVLC), which is a lower-complexity alternative to CABAC for the coding of quantized transform coefficient values. Although lower complexity than CABAC, CAVLC is more elaborate and more efficient than the methods typically used to code coefficients in other prior designs.
      • A common simple and highly structured variable length coding (VLC) technique for many of the syntax elements not coded by CABAC or CAVLC, referred to asExponential-Golomb coding (or Exp-Golomb).
    • Network Abstraction Layer (NAL) definition allowing the same video syntax to be used in many network environments. One very fundamental design concept of H.264 is to generate self-contained packets, to remove the header duplication as in MPEG-4's Header Extension Code (HEC).[32] This was achieved by decoupling information relevant to more than one slice from the media stream. The combination of the higher-level parameters is called a parameter set.[32] The H.264 specification includes two types of parameter sets: Sequence Parameter Set (SPS) and Picture Parameter Set (PPS). An active sequence parameter set remains unchanged throughout a coded video sequence, and an active picture parameter set remains unchanged within a coded picture. The sequence and picture parameter set structures contain information such as picture size, optional coding modes employed, and macroblock to slice group map.[32]

    Test scenarios we write:

    The automated testing framework is using a technology called fluent interface, which enables script writers to write test cases like using natural language. For example,

    OrderRef ref = trader.withTradingApplication().createNewOrderWith().

                            .symbol("xxx").side(BUY).quantity(100)..send();

    A fluent interface is normally implemented by using method cascading (concretely method chaining) to relay the instruction context of a subsequent call (but a fluent interface entails more than just method chaining). 

    In us-galaxy, tests are organized into different packages according to the features. Packages like: auto Rule, eod Rule, expunge Rule, manual adv, manual ioi, integration b-g, integration p-g. In autoRule package, test rules on Country, CovUser, Desk, Region....

    Testing trading application: 

    Environment: QA env, SIT2 env for f2b testing, then UAT env. 

    Functional testing: for example, in the release there is some new feature ErrorMove added, then you need to perform the testing steps to verify if it is the expected behavior. Test steps: download the latest version deployed in QA env, create order, execute order, move the executions to error book, check if the order's execQty is less, and if error book has got the qty. 

    also, if the release has some bug fix, we need to test if the bug is fixed and also perform the regression testing, mainly through automation.

    Status report: green sign-off.

    Agile project development we use:

    We have bi-weekly sprint meeting, which includes Review, Planning, Retrospective. Review part is reviewing every body's work during last sprint, if task is delivered on time, and if not, what the blocking reason is. Planning is according to every body's own velocity, include the tasks into sprint by considering the priority, severity of tasks in the backlog.  Retrospective: collect everybody's thought on the good, bad part of the testing process, what actions can be done to improve current situation, who is responsible for the action. Still, in the middle of sprint, some tasks may be added into the sprint if they are important or the person has time left.

    We also have daily scrum meeting, in which every one states the work he has done yesterday and his planning for today. 

    The team I am currently working in:

    Automated testing team: with both QA and automated testing framework developers. QA does both manual and automated testing. And developers build and support the testing framework for QA to use when writing and executing automated test scripts. Our team automates all the in-house applications at the cash equities side, from front-office trading applications, middle-office booking/risk management, to back-office settlement applications. The sprint is also divided according to the function area.

    From the beginning of automating testing an application, I first discuss with QA on the automatable items and collect them in a work log. Then by prioritizing the tasks, we do some initial planning, like delivering date for them.  It usually takes developers several weeks to build the framework from scratch and provide the first feature to be tested. Then we start regular sprint planning, once a new feature is delivered, developer will provide script example and instruct QA how to use the framework. The planning for the next sprint not only includes new featues, but also bugs found in the testing framework. Therefore, in the following sprint, QA will also have task to verify the bug in the harness is not there anymore.

    Self intro:

    I will start with my educational background. I was studying on Communications Engineering in Tianjin University, so I learned a lot of hardware-related courses like low/high frequency circuit analysis, wireless communication, assembly language, digital circuit design, etc. I was honored the Outstanding Graduate that year with a major rank 2nd among 120 students.

    Then I accepted the full research scholarship offer from Hong Kong University of Science of Technology. During my two and a half year master study in UST, I was mainly doing research on Video compression algorithms design. I obtained quite a lot of knowledge on video and image processing and current video coding standards: published three papers on top international academic conferences as the first author. 

    After graduation, I spent four months working in a local technology firm doing C# programming, then I started summer internship program in Equities Single-Stock OMS team in Barcaps Capital. When the three-month internship ended, I was the only intern in Hong Kong who was retained as a permanent employee.

    In HK I was part of Equities QA team and I was responsible for developing automated testing framework for APAC OMS using programming language core Java. I was cooperating with script writers and OMS developers, and our framework finally covered almost 80% percent of OMS testing. In September last year, I joined the Automated testing team in Prague office, which is the technology center of Barcap in Europe. I got the chance to develop testing framework for more systems, like Global Program trading system and Interest-of-order publishing system. 

    And since I would like to move to another place or back to Hong Kong now, I have resigned from Barcap and am looking for job in testing area.

    Reason to change: 

    Personal reason: I would like to move to another city or back to HK, I prefer fast-paced and more international environment.

    This quality assurance engineer position is in the video-related team. I was majoring in Communcation Engineer in my undergraduate study, and had been doing research on video compression for three years. So I have gained a lot of knowledge on the hardware design, video processing and compression algorithms. Then my three-year working experience has trained me on software engineering side, I am solid in core Java programming and also familiar with automated testing methodologies. So I think I may make use of both my hardware and software knowledge in this position. 

    Also, amazon is the largest Internet based company and I would like to work with the most intelligent people there. I am expecting the highly cooperative, efficient working environment. I would like to develop my long-term career there.

    I think my personalities fit into testing job better. I am extremely detail oriented, and hardworking. I like communicating with others. I am good at solving automated testing issues. My previous experience as a developer would be my advantage comparing to other testers, I am able to dig deep into the problem and handle technical issues properly. 

  • 相关阅读:
    google glog 使用方法
    LIBRARY_PATH和LD_LIBRARY_PATH环境变量的区别
    c++ ‘nullptr’ 在此作用域中尚未声明
    Impala 使用的端口
    忽略“Signal: SIGSEGV (Segmentation fault)”
    查看python脚本的运行pid,让python脚本后台运行
    阿里云主机运行速度慢的解决办法
    在Git.oschina.net中配置TortoiseGit使用sshkey,无需输入账号和密码
    抓取国家的学校编码数据
    CAS统一登录认证好文汇集贴
  • 原文地址:https://www.cnblogs.com/chayu3/p/4025537.html
Copyright © 2011-2022 走看看