def testOneFrameDelta(self):
    timestamps = self._CreateUniformTimestamps(0, 10, self.refresh_period)
    results = self._CreateDictionaryFromResults(
                  SurfaceStatsCollector._CalculateResults(
                      self.refresh_period, timestamps, ''))

    self.assertEquals(results['avg_surface_fps'].value,
                      int(round(1 / self.refresh_period)))
    self.assertEquals(results['jank_count'].value, 0)
    self.assertEquals(results['max_frame_delay'].value, 1)
    self.assertEquals(len(results['frame_lengths'].value), len(timestamps) - 1)
Esempio n. 2
0
    def testOneFrameDelta(self):
        timestamps = self._CreateUniformTimestamps(0, 10, self.refresh_period)
        results = self._CreateDictionaryFromResults(
            SurfaceStatsCollector._CalculateResults(self.refresh_period,
                                                    timestamps, ''))

        self.assertEquals(results['avg_surface_fps'].value,
                          int(round(1 / self.refresh_period)))
        self.assertEquals(results['jank_count'].value, 0)
        self.assertEquals(results['max_frame_delay'].value, 1)
        self.assertEquals(len(results['frame_lengths'].value),
                          len(timestamps) - 1)
Esempio n. 3
0
    def testSomeFramesTooShort(self):
        timestamps = self._CreateUniformTimestamps(0, 5, self.refresh_period)
        # The following timestamps should be skipped.
        timestamps += self._CreateUniformTimestamps(timestamps[4], 5,
                                                    self.refresh_period / 100)
        timestamps += self._CreateUniformTimestamps(timestamps[4], 5,
                                                    self.refresh_period)

        results = self._CreateDictionaryFromResults(
            SurfaceStatsCollector._CalculateResults(self.refresh_period,
                                                    timestamps, ''))

        self.assertEquals(len(results['frame_lengths'].value), 9)
  def testSomeFramesTooShort(self):
    timestamps = self._CreateUniformTimestamps(0, 5, self.refresh_period)
    # The following timestamps should be skipped.
    timestamps += self._CreateUniformTimestamps(timestamps[4],
                                                5,
                                                self.refresh_period / 100)
    timestamps += self._CreateUniformTimestamps(timestamps[4],
                                                5,
                                                self.refresh_period)

    results = self._CreateDictionaryFromResults(
                  SurfaceStatsCollector._CalculateResults(
                      self.refresh_period, timestamps, ''))

    self.assertEquals(len(results['frame_lengths'].value), 9)
Esempio n. 5
0
#         cur_surface = int(match.group(1), 16)
#       except Exception:
#         logging.error('Failed to parse current surface from ' + match.group(1))
#     else:
#       logging.warning('Failed to call SurfaceFlinger surface ' + results[0])
#     return {
#         'page_flip_count': cur_surface,
#         'timestamp': datetime.datetime.now(),
#     }
from pylib.android_commands import AndroidCommands
from pylib.perf.surface_stats_collector import SurfaceStatsCollector
if __name__ == '__main__':

    resultList = []
    adb = AndroidCommands("emulator-5554")
    collector = SurfaceStatsCollector(adb)
    collector.DisableWarningAboutEmptyData()
    collector.Start()
    for i in range(50):  #循环50次,主要方便自己的实现,其他实现方法请另行实现;
        time.sleep(0.3)
        results = collector.SampleResults()
        if not results or not results[0].value:
            pass
        else:
            print(results[0].value)
            resultList.append(int(results[0].value))

    collector.Stop()
    print(resultList)
    # a = resultList[3:-3]
    # print(a)